Meine Vorschläge:
1. Den Unterschied zwischen gelesenen und ungelesenen Topics etwas verstärken (Das Bold für ungelesen fällt kaum auf)
2. Den Unterschied zwischen offenen und gelösten Topics verändern (z.B. durch Gründe Farbe für gelöst)
Meine Vorschläge:
1. Den Unterschied zwischen gelesenen und ungelesenen Topics etwas verstärken (Das Bold für ungelesen fällt kaum auf)
2. Den Unterschied zwischen offenen und gelösten Topics verändern (z.B. durch Gründe Farbe für gelöst)
Preorder ist da (http://preorder.oneplus.net/)
Ab dem 27. Oktober 15:00 GMT könnt ihr alle ohne Invites bestellen =)
PM wer ein Invite will! (wer zuerst kommt, ...)
Könnt ja dann euren Invite AutoIt-Intern weitergeben.
edit
Vergeben
Ok.. Danke für die Info
Für User32.dll, Kernel32.dll, ComCtl32.dll oder Gdi32.dll doch eigtl nicht, weil diese dauerhaft im Arbeitsspeicher vorhanden sind.
Oder gilt das für AutoIt nicht?
Marthog
Danke =)
AspirinJunkie
Hast du oder irgendwer anders noch mehr solcher Seiten? (Bithacks)
Diese Funktion wandelt unten stehende Temperaturen zueinander um.
[autoit] ZitatConvertTemp(Temperaturen in Grad, konvertieren von, konvertieren zu, runden auf)
Func ConvertTemp($D, $F = "C", $T = "F", $R = 2)
$D = ($F = "K") ? (($D - 273.15)) : (($F = "F") ? (($D - 32) / 1.8) : (($F = "Ra") ? (($D + 5 / 9) - 273.15) : (($F = "Re") ? (($D * 1.25)) _
: (($F = "De") ? ((100 - $D) * 2 / 3) : (($F = "N") ? (($D * 100 / 33)) : (($F = "Ro") ? (($D - 7.5) * 40 / 21) : $D))))))
return round(($T = "C") ? $D : (($T = "K") ? (($D + 273.15)) : (($T = "F") ? (($D * 1.8) + 32) : (($T = "Ra") ? (($D + 273.15) * 1.8) : (($T = "Re") ? (($D * 0.8)) _
: (($T = "De") ? ((100 - $D) * 1.5) : (($T = "N") ? (($D * 1 / 3)) : (($T = "Ro") ? (($D * 0.525) + 7.5) : "" ))))))), $R)
EndFunc ;==> ConvertTemp() AutoIt v3.3.12.0
MsgBox(0, "Convert Temp", ConvertTemp(80, "C", "F")) ; ==> 176
MsgBox(0, "Convert Temp", ConvertTemp(212, "K", "Ra", 2)) ; ==> 381.6
MsgBox(0, "Convert Temp", ConvertTemp(22.7, "N", "Re", 4)) ; ==> 55.0303
Klar habt ihr beide damit was ihr sagt recht, aber mein Grundgedanke bei der Funktion war im ersten einfach nur zu zeigen, wie man das alternativ berechnen kann, ohne jetzt die Größe der Funktion zu verdoppeln oder zu verdreifachen um Fehlerquellen der User zu vermeiden. =)
Bin2Dec hinzugefügt
Danke dir =)
Keine Build-In? Hätt ja sein können.. hab nicht geschaut
Danke für die Seite =)
Hier ist wieder eine Alternativ-Berechnung für Dec to Bin und Bin to Dec
Dec 2 Bin
[autoit]Func Dec2Bin($D)
Return (BitShift($D, 1) ? Dec2Bin(BitShift($D, 1)) : "") & BitAnd($D, 1)
EndFunc ;==> Dec2Bin() AutoIt v3.3.12.0
MsgBox(0, "Dec2Bin", Dec2Bin(1337) & " | " & Dec2Bin(15)) ; ==> 10100111001 | 1111
[/autoit]oder (danke an AspirinJunkie)
[autoit]Func Dec2Bin($D)
Return $D ? Dec2Bin(BitShift($D, 1)) & BitAnd($D, 1) : ""
EndFunc ;==> Dec2Bin() AutoIt v3.3.12.0
MsgBox(0, "Dec2Bin", Dec2Bin(1337) & " | " & Dec2Bin(15)) ; ==> 10100111001 | 1111
[/autoit]Bin 2 Dec
[autoit]Func Bin2Dec($B)
Return BitOr((StringLen($B) > 1 ? BitShift(Bin2Dec(StringTrimRight($B, 1)), -1) : 0), StringRight($B, 1))
EndFunc ;==> Bin2Dec() AutoIt v3.3.12.0
MsgBox(0, "Bin2Dec", Bin2Dec(10100111001) & " | " & Bin2Dec(1111)) ; ==> 1337 | 15
[/autoit]Hab mal die Geschwindigkeit getestet.
In beiden Versuchen war meine Funktion schneller als die Build-In Funktion =)
While $i <> 100000 | _DateDayOfWeek(_DateToDayOfWeek(1990, 1, 1)) ==> 5.168 sec | 3.294 sec
While $i <> 100000 | GetWeekday(1, 1, 1990) ==> 3.274 sec | 1.613 sec
edit:
- Schneller weil kein Fehlerüberprüfung, da ich eigtl davon ausgehe, dass "Leute" wissen wie man ein Datum richtig schreibt.
Diese Funktion zeigt wie man HEX to RGB manuell berechnen kann.
Ansonsten bitte die _ColorGetRGB (EN) / _ColorGetRGB (DE) Funktion verwenden.
Func hex2rgb($clr)
$h = StringInStr($clr, "0x") ? $clr : (StringInStr($clr, "#") ? "0x" & StringMid($clr, 2) : "0x" & $clr)
Return BitShift(BitAnd($h, 0xff0000), 16) & "," & BitShift(BitAnd($h, 0xff00), & "," & BitAnd($h, 0xff)
EndFunc
MsgBox(0, "hex2rgb", hex2rgb("0x77c8d2") & @CRLF & hex2rgb("#77c8d2") & @CRLF & hex2rgb("77c8d2")) ; ==> 119,200,210
[/autoit]oder
[autoit]Func hex2rgb($clr)
$h = StringInStr($clr, "0x") ? $clr : (StringInStr($clr, "#") ? "0x" & StringMid($clr, 2) : "0x" & $clr)
Return BitAnd($h / 65536, 255) & "," & BitAnd($h / 256, 255) & "," & BitAnd($h, 255)
EndFunc
MsgBox(0, "hex2rgb", hex2rgb("0x77c8d2") & @CRLF & hex2rgb("#77c8d2") & @CRLF & hex2rgb("77c8d2")) ; ==> 119,200,210
[/autoit]Verwendet werden können: 0x?????? | #?????? | ??????
Beispielergebnis:
Drum Alternativ-Berechnung (Manuell) =)
Wieder ein Alternativ-Script zur Berechnung welcher Tag an welchem Datum war.
z.B. 01.01.1990 ==> Montag
Func GetWeekday($M, $D, $Y)
Static $WeekDay[7] = ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"]
If ($M < 3) Then
$M += 12
$Y -= 1
EndIf
$wd = Mod($D + (2 * $M) + Floor(6 * ($M + 1) / 10) + $Y + Floor($Y / 4) - Floor($Y / 100) + Floor($Y / 400) + 1, 7)
Return $WeekDay[$wd]
EndFunc ;==> GetWeekday() AutoIt v3.3.12.0
; GetWeekday(Monat, Tag, Jahr)
MsgBox(0, "Get Weekday", GetWeekday(1, 1, 1990)) ; 1990-01-01 --> Montag
MsgBox(0, "Get Weekday", GetWeekday(4, 15, 2014)) ; 2014-04-15 --> Dienstag
MsgBox(0, "Get Weekday", GetWeekday(9, 9, 1999)) ; 1999-09-09 --> Donnerstag
- Anwendungsbeispiele hinzugefügt
Hier funktioniert das ganze über eine Funktion
- QueryPerformance(1) ==> Zähler initialisieren
- $End = QueryPerformance(0) ==> Gebrauchte Zeit auslesen (+ Zurücksetzten für nächsten Lauf)
Es zeigt halt einfach eine andere Art der Implementierung von QueryPervormanceCounter an =)
Diese Funktion zeigt wie man int to hex manuell berechnen kann.
Ansonsten bitte die Hex (EN) / Hex (DE) Funktion verwenden.
Func int2hex($int)
Local $h
$BIT_BYTE = 8 ; bits per byte
$HEX_BYTE = $BIT_BYTE / 4 ; hex digits in a byte
$BIT_INT = 32 ; sizeof(int)
$HEX_INT = $BIT_INT / ($BIT_BYTE / $HEX_BYTE) ; hex digits in an int
While $HEX_INT ; while HEX_INT--
$HEX_INT -= 1 ; while HEX_INT--
$n = BitAnd(BitShift($int, ($HEX_INT * 4)), 0xf) ; (int >> (HEX_INT * 4)) & 0xf
$h &= $n > 9 ? chr(0x37 + $n) : $n
If $HEX_INT == 0 AND Floor($HEX_INT / $HEX_BYTE) == 0 Then ; if (HEX_INT == 0 && HEX_INT // HEX_BYTES == 0)
$h &= " "
EndIf
WEnd
Return "0x" & $h
EndFunc ;==> int2hex() AutoIt v3.3.12.0
MsgBox(0, "int2hex", int2hex(119) & " | " & int2hex(2147483647) & " | " & int2hex(4294967295))
[/autoit]