Danke Velted für die Erklärung bzw. Link.
Beiträge von Moombas
-
-
BugFix : Laut Hilfe sollte das egal sein:
"For Checkbox and Radio controls only the $GUI_CHECKED (1), $GUI_UNCHECKED (4) or $GUI_INDETERMINATE (2) states are returned so the value can be used directly."
Nur bei ListView und Treeview sollte man das BitAnd nutzen. Wobei mich das $GUI_INDETERMINATE ein wenig irritiert.
-
Ein kleines Beispiel:
AutoItOpt('MustDeclareVars', 1) #include <Array.au3> Global $aArray1[2] = ["Org Item 0", "Org item 1"] Global $aArray2[2] = [0, $aArray1] _Arraydisplay($aArray2); Zeigt nur an das sich ein Array in $aArray2[1] befindet mittels {Array} Consolewrite(($aArray2[1])[0] & @CRLF) ;greift auf das 0. Element im Array, das im "HauptArray"[1] befindet. Ausgabe: Org Item 0 -
Richtig. Links das Ziel, Rechts die Operation
-
BugFix : Müsste das mit dem Auselesen des Ini-Wertes und Setzen für die Checkbox nicht noch einfacher gehen:
AutoIt;Deins: If BitAND(IniRead($Ini, 'checkbox', 'status', $GUI_UNCHECKED), $GUI_CHECKED) Then GUICtrlSetState($check, $GUI_CHECKED) EndIf ;Meins: GUICtrlSetState($check, IniRead($Ini, 'checkbox', 'status', $GUI_UNCHECKED))Es ist in der Ini ja der bool wert gespeichert (sollte zumindest) und den kann man doch direkt anwenden, anstatt ihn nochmal und zu Verknüpfen. Zumindest meine Test waren erfolgreich. Oder sehe ich den Vorteil deiner Methode gerade nicht?
-
Du verwendest doch den Befehl bereits beim Ini-Schreiben, musst ihn nur auf die Variable ändern und dort einfügen wo du es brauchst:
$TEST = GUICtrlRead($Input)
-
Du solltest nicht 2 Methoden (Schleife und OnEvent) Mischen.
Weise dem btn2 auch ein Event zu mit entsprechender Funktion und Code und alles sollte klappen
Und btw: Schau mal Quer mit deinen Zuweisungen bzgl Local und Global etc. du scheinst hier enorm gemischt zu haben, das sieht sehr Chaotisch aus.
Beispiel: $btn2 ist Global definiert, wirst du wohl aber niemals Global brauchen, maximal Local. Dank Eventmode auch eher gar nicht.
-
Wo steckt die aufzurufende Funktion "CheckHotkey"?
Deine Funktion dial() wird zu keinem Zeitpunkt aufgerufen - du kannst sie also weglassen.
Ich denke hier ist das "CheckHotkey" durch "dial" zu ersetzen.
-
Alternativ: (Ich habe den Link oben mal entfernt, da mein 2. Ansatz doch aufwändiger ist als erst gedacht):
AutoIt
Alles anzeigenOpt('MustDeclareVars', 1) #include <Array.au3> SetFocus('ftel.exe') Func SetFocus($sAppName) Local $aWindows, $handle, $list Local Const $aProcesses = ProcessList($sAppName) For $i = 1 To $aProcesses[0][0] $aWindows = _ProcessGetWinEx($aProcesses[$i][1]) For $Row = 1 to $aWindows[0] $handle = $aWindows[$Row] $list = WinList() For $i = 0 To UBound($list)-1 If $handle=$list[$i][1] Then WinActivate($list[$i][0]) ExitLoop EndIf Next Next Next EndFunc ;Source: https://www.autoitscript.com/forum/topic/80830-how-to-activate-window-by-pid/#comment-581721 Func _ProcessGetWinEx($ivPid, $svClass = "", $svTitle = "", $svText = "", $ivReturnOnlyFirstMatch = False) Local $avClass $ivPid = ProcessExists($ivPid) If Not $ivPid Then Return(SetError(1, 0, 0)) Local $avwArray = WinList() Local $avRet[1] = [0] For $i = 1 To $avwArray[0][0] $avClass = DllCall("User32.dll", "int", "GetClassName", "hwnd", $avwArray[$i][1], "str", "", "int", 4096) If WinGetProcess($avwArray[$i][1]) = $ivPid Then If $svClass = "" Or (IsArray($avClass) And $avClass[2] = $svClass) Then If ($svTitle = "" Or StringInStr($avwArray[$i][0], $svTitle)) And ($svText = "" Or StringInStr(WinGetText($avwArray[$i][1]), $svText)) Then $avRet[0] += 1 ReDim $avRet[$avRet[0]+1] $avRet[$avRet[0]] = $avwArray[$i][1] If $ivReturnOnlyFirstMatch Then $avRet = $avret[1] ExitLoop EndIf EndIf EndIf EndIf Next Return $avRet EndFuncWenn du natürlich das Programm immer über dein Skript startest, würde der Teil mit dem finden der PID hier weg fallen.
-
Da du die Klasse hast, versuch Zeile 22 mal so: WinActivate("[CLASS:TfrmGUI]", "")
-
Meinst du so?
AutoIt
Alles anzeigenOpt('MustDeclareVars', 1) #include <GUIConstantsEx.au3> Global Const $hGUI = GUICreate("Test", 500, 500) Global Const $mM1 = GUICtrlCreateMenu("Menü1") Global Const $mM2 = GUICtrlCreateMenuItem("Menü2", $mM1) Global Const $mExit = GUICtrlCreateMenuItem("Exit", $mM1) GUISetState() While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE, $mExit Exit Case $mM1 MsgBox(0, "1", "I can be actioned!") Case $mM2 MsgBox(0, "2", "I can be actioned!") EndSwitch WEndMist BananaJoe war schneller

-
hipfzwirgel: Dann gehe ich davon aus das die Daten vom NFC-Chip gelesen werden und vorher von dir darauf programmiert werden. Richtig? Dann gebe den programmierten Daten das @ (oder was auch immer) direkt als letztes Zeichen mit (ich weiß QuD aber simpel)!?
Oder du versuchst es mit BugFix's Methode

-
Da Stimme ich dir voll zu.
Es bliebe nur die Möglichkeit eine andere Navi-App zu nutzen, wobei ich keine kenne, die nicht 3D macht (ich selbst finde das durchaus besser aber das ist Geschmacks- und Gewöhnungssache).
Ich nutze Maps nur zur Notfallnavigation als Fußgänger im Urlaub XD im Auto immer namhafte (teilw. fest verbaute) Navis wie TomTom oder Garmin, die mittlwerweile halt alle nur in 3D anzeigen. Die geben zusätzliche Orientierungshilfen an (egal ob's die Pfeile bei mehreren Spuren sind oder z.B. der optische als auch akustische Hinweis nach der Kirche abzubiegen), bin ich mit denen bestens gefahren.
Wegen Stau habe ich auch eher selten Probleme, kann daher dahingehend deren zuverlässigkeit nicht 100% einschätzen aber wenn es vorgeschlagen hat deswegen woanders längs zu fahren, gemacht und klappte prima.
Ich denke im Grunde, da du sonst mit MAps zufrieden bist, musst du dich an 3D gewöhnen.
-
Ich glaibe das geht nur, wenn du den Kompass dauerhaft auf Nordausrichtung (in maps) stellst.
-
leider kann ich den Scanner nicht dazu bewegen ein alternatives Zeichen zu senden als Suffix...
Ist es ein Zebra scanner?
-
Ganz blöde Frage: Du kannst bei Scannerknofigurationen ja auch selbst definierte Zeichen anhängen (z.B. ein @ ).
Wäre das nicht für dich abfangbar, da dies ein normales String-Zeichen ist?
-
Pack mal an den Anfang des Skriptes Opt('MustDeclareVars', 1) und danach #AutoIt3Wrapper_Au3Check_Parameters=-q -d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6 -w 7
Dann arbeitest du die Fehlermeldungen mal durch.
Ich hoffe die fehlende Formatierung /Einrückung ist beim copy/paste passiert? Der Code ist so nicht lesbar.
-
Ja, ich kenne das. Da stimme ich dir zu 100% zu.
Auch
ich immernoch über Sachen wie WhatsApp in W11. Ich habe eine Tastatur mit frei zuteilbaren Tasten, denen ich gerne z.B. Whatsapp als schnellzugriff zuweisen würde aber W11 installiert das in einem ominösen (versteckten) Ordner, auf den ich auch als Admin nicht zugreifen darf, was wiederum verhindert das die Logitech G-Suite dies der Taste zuweisen kann (wenn man das mal alles heruasgefunden hat wann/wo/wie das liegt). Selbst wenn ich den Pfad per C&P einfüge: Zugriff verweigert. 
Unter W10 war das noch Problemlos möglich...
-
Das mit der Datei, kommt bei mir nicht vor, läuft alles übers NAS (an der Fritzbox) und da hatte ich solche Meldungen bisher noch nicht.
Ok, das mit der Gruppierung:
ZitatGruppierung im Datei Explorer aufheben
Als Beispiel der Ordner Downloads:
Hier im Datei Explorer unter C:\Users\Dein Name\Downloads aufrufen. (Oder den von euch eingestellten Ordner)
- Rechtsklick in den Ordner -> "Gruppieren nach" -> (Keine anklicken)
- Danach ein weiterer Rechtsklick -> Eigenschaften -> Reiter Anpassen
- Ordnertyp einstellen und den Haken setzen bei Vorlage für alle Unterordner übernehmen und mit Übernehmen / OK bestätigen.
Das war es eigentlich auch schon. Dadurch wird verhindert, dass auch die Unterordner wieder gruppiert dargestellt werden. Sollte das nicht ausreichen, dann versucht den Trick, den wir darunter aufgeführt haben.
Mit der Höhe der Elemente habe ich noch nicht rumgespielt/gesucht, da mich das nicht gestört hat bisher.
Hast du mal probiert ob du mit der Skalierung das ggf. kleiner bekommst, wobei das ja auch Auswirkungen auf alles andere hat und daher wohl keine wirkliche Lösung wäre.
-
Zu deinem markierten Bereich: Ich habs gerade nicht vor Augen, da ich nur zuhause W11 habe. Aber im Explorer müsstest du diese "Favoriten" ausblenden können.
Und das Problem mit nicht ausführbaren Dateien habe ich noch nicht gehabt bisher.
Und welche Gruppierung meinst du? Ich habe mit W11 aufgehört ClassicShell oder so zu nutzen und habe das "neue Startmenü" nur bedingt angepasst (keine Voschläge, news etc.) ohne "Fremdsoftware" dafür zu nutzen.