Beiträge von diepfeile
-
-
die lösung ist noch besser thx
-
wenn man bei autoit hotkeys verwendet, sind diese ja nicht mehr in andern progammen nutzbar. zb wenn man f5 nutzt kann man im browser damit nicht mehr refreshen. also möchte ich es so machen dass die keys nur in bestimmten fenstern funktionieren.
Code
Alles anzeigenHotKeySet("{F3}","window") Func piu($F) If Not WinActive("Unbenannt - Editor") Then ControlSend("","","",$F) Return EndIf EndFunc Func window() piu("{F3}") TrayTip("yo","notepad",10) EndFunc While 1 Sleep(500) WEnd
leider komm ich mit dem return nur aus der ersten funktion und nicht der zweiten raus
-
Code
$msg = GUIGetMsg() Select Case $msg = -3 ; GUI_EVENT_CLOSE ExitLoop Case $msg = $listitem MsgBox(0,"listitem",$msg) EndSelect
für vordefinierte elemente funktioniert das gut um onclicks zu starten, nur habe ich ein listview mit vielen zeilen welche ich durch ein array($listitem[]) ansprechen kann. da "Case $msg = $listitem" nicht geht, muss ich für jedes element einen case machen oder gibts da eine konfortablere lösung? -
mit array gelöst, trotzdem danke
-
-
jo ans array hab ich dann auch schon gedacht, aber wie definiere ich eins, ohne mich auf einen festen wert festzulegen. weil das werden schon mehrere hundert einräge werden. oder mach ich da einfach Global $aArraySteuerelemente[99999] und gut?
-
hmm ich glaub das geht nicht mit assign() oder eval().
ich möchte zeilen mit GUICtrlCreateListViewItem() erstellen und wieder löschen.also:
und dann später:
dafür brauch ich ja die control id.funzt auch nicht:
-
-
und wie geht das dann mit dem schreiben von werten in mehrere spalten, mit den "|" funktioniert schonmal nichtmehr
Code
Alles anzeigen$hListView = GUICtrlCreateListView("11|22|33|44", 2, 2, 394, 268) GUISetState() ; Spalte einfügen _GUICtrlListView_InsertColumn($hListView, 0, "Spalte 1", 100) _GUICtrlListView_InsertColumn($hListView, 1, "Spalte 2", 100) _GUICtrlListView_InsertColumn($hListView, 2, "Spalte 3", 100) _GUICtrlListView_InsertColumn($hListView, 3, "Spalte 4", 100) ; Fügt die Items hinzu _GUICtrlListView_InsertItem($hListView, "Item 1|2|3|4", 0) _GUICtrlListView_InsertItem($hListView, "Item 2", 1) _GUICtrlListView_InsertItem($hListView, "Item 3", 0)
-
kann man mit GUICtrlCreateListViewItem auch oben in der tabelle ein item dazufügen statt am ende?
falls das nicht geht, kann man es so einstellen dass es automatisch mitscrollt, wenn neue items unterhalb des sichtbereichsder listbox hinzugefügt werden?
oder gibt es andere funktionen mit denen man das bewerkstelligen kann? -
-
ich suche nach nach eine regex für zahlen aber ohne 0.
es ist nen integer:
836 ja
101 ja
90 ja
0 nein([\d+^0]) funzt nicht
-
Evtl. ConsoleWrite
Man muss ja nicht nach jedem Befehl was loggen, sondern könnte ja in unterschiedliche Bereiche einteilen wo dann geloggt wird das irgendwas gemacht wurde. (Und wenn man es auch bei einem kompiliertem Skript noch lesen können soll dann zusätzlich als CUI kompilieren.)
die ist recht praktisch, aber das geht nur wenn man das script ausm editor startet und wenn man ff.au3 included kann man das vergessen da das es vollspammt. hab vergessend ie zu erwähnen.Hallo DiePfeile,
[autoit]
wie wäre es mit_FileWriteLog
[/autoit]
mfg autoBert
ne ich suchte was, dass in ein fenster loggt nicht in eine datei.Dafür gibt es doch die UDF Debug.au3, die bei AutoIt dabei ist.
sieht zu ausführlich und aufwendig aus.erstell doch ne kleine gui mit label, das sind ~10 zeilen,
Und dann änderst du das label immerjo, hab ich mir dann eben zusammen geprogt. falls wer anderes sowas auch sucht:
[autoit]#include-once
[/autoit][autoit][/autoit][autoit]
#cs include for easier logging, to see what a script is doing e.g.: logit("changed var $map to : " & $map)
and sometimes the clear_edit_box() func needs to be called to clear the edit box22.06.2011 + created
[/autoit][autoit][/autoit][autoit]
#ce; GUI
[/autoit][autoit][/autoit][autoit]
$fensterx = 250 ; ui width
$fenstery = 250 ; ui heigth
$guiwintext = @ScriptName & "-Log"
$guiwin = GUICreate($guiwintext,$fensterx,$fenstery,2600,700) ;creates the loggui
;editbox for log
$guiedit = GUICtrlCreateEdit("Starting up...",0,0,$fensterx,$fenstery) ;creates the textfield in the gui
GUISetState(@SW_SHOW) ; shows it
WinSetOnTop($guiwin,"",1) ; sets the window on top, who would have thought that;timestamps the text, appends a newline and puts it in the editbox as log
[/autoit][autoit][/autoit][autoit]
Func _logit($text)
GUICtrlSetData($guiedit, @HOUR & ":" & @MIN & ":" & @SEC & " " & $text & @CRLF, "append") ; creates logentry
EndFunc ;==>_logit; removes older lines from the edit box, so that there is always place for new ones
[/autoit]
Func _clear_edit_box()
$tmp = GUICtrlRead($guiedit)
If StringLen($tmp) > 29500 Then
GUICtrlSetData($guiedit,StringTrimLeft($tmp,5000))
EndIf
EndFunc ;==>_clear_edit_box -
ich suche was, das mir das logging erleichtert, ka ob script oder nur befehl.
mein problem ist, ich hätte gerne log ausgaben vom script, aber diese gescheit darstellen ist nicht so einfach.
full ui -> schön aber viel zu coden, wodurch das log aufwendiger werden kann als das script selbst
msgbox -> zu nervig weil es aktiv wird und bestätigung braucht
traytip -> pratisch für gelegentliche meldungen, aber als dauerhaftes log zu nervig
tooltip -> recht nervig und muss dazu noch entfernt werden
splashtexton -> recht praktisch leider aber always on top
gibt es nicht sowas wie ein log4autoit oder ne funktion die genau fürs logging zugeschnitten ist? so eine art kleines fenster wodrin steht was es gerade versucht zu tun. -
doh danke. ich dacht das wäre schon automatisch mitdabei.
-
ich habe ein problem mit ProcessWaitClose("programm.exe")., der prozess wird dadurch nicht gekillt. wenn ich denn prozess dann von hand stoppe läuft dasprogram wie gewohnt weiter. muss man dafür adin rechte haben oder was mache ich da falsch?
-
-
wie kann ich denn in firefox die url mit der ff.au3 auslesen? irgendwie find ich dazu einfach nichts, weder in der au3 noch bei google oder hier. dürfte doch eigenltich nicht so schwer sein an die url zu kommen, wenn man bedenkt was man sonst so alles mit der ff.au3 machen kann.
[autoit]_FFTabGetSelected()
[/autoit]bringt nur den titel oder die indexnummer
-
[autoit]
IniWrite()
[/autoit]
IniRead()
war schon nen guter tipp, danke.
den genauen code mus sich noch bauen...