pytrelooc
Goto Top

AutoIT - Listbox ausgewählte zeile abfragen

Hallo zusammen,

ich habe folgendes Problem.
Und zwar versuche ich in AutoIt eine Listbox so auszulesen dass wenn ich mit der Maus über den ersten Eintrag fahre mir der Inhalt von z.B. Variable1 ausgegeben wird, wenn ich über den zweiten Eintrag fahre der Inhalt von Variable2 usw.

Ich weiß zwar dass es einen Mouseover-Befehl gibt jedoch weiß ich nicht wirklich wie ich diesen hier einsetzen kann.


Vielleicht könnt ihr mir helfen.

Vielen Dank schon mal

Gruß Pytrelooc

Content-ID: 226022

Url: https://administrator.de/forum/autoit-listbox-ausgewaehlte-zeile-abfragen-226022.html

Ausgedruckt am: 21.04.2025 um 13:04 Uhr

colinardo
Lösung colinardo 07.01.2014, aktualisiert am 08.01.2014 um 09:11:46 Uhr
Goto Top
Hallo Pytrelooc,
nur zum Verständnis, du möchtest den aktuellen Wert schon durch ein MouseOver erhalten und nicht durch einen Klick ?
Den aktuell ausgewählten Wert einer Listbox kannst du so abfragen

Beispiel-Form:
#include <GUIConstantsEx.au3>
#include <GUIListBox.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode", 1)  
$Form1 = GUICreate("Form1", 228, 167, 192, 124)  
GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close")  
$List1 = GUICtrlCreateList("", 8, 8, 209, 149)  
GUICtrlSetOnEvent(-1, "List1Click")  
GUISetState(@SW_SHOW)
GUICtrlSetData($List1,"Eintrag1|Eintrag2|Eintrag3")  

While 1
	Sleep(100)
WEnd
Func Form1Close()
	exit
EndFunc
Func List1Click()
	$aktuellerWert = GUICtrlRead($List1)
	; Alternative Variante
	; $aktuellerWert = _GUICtrlLIstbox_getText($List1,_GUICtrlListBox_GetCurSel($List1))
	msgbox(0,"",$aktuellerWert)  
EndFunc
Grüße Uwe
pytrelooc
pytrelooc 08.01.2014 um 08:35:10 Uhr
Goto Top
Hallo Uwe,

vielen Dank schonmal für deine Hilfe !
Genau ich möchte durch den MouseOver schon diese Information erhalten, jedoch nicht in einer Messagebox sondern in dem typischen MouseOver-Fenster das man kennt.

Grüße Pytrelooc
colinardo
Lösung colinardo 08.01.2014 aktualisiert um 09:11:42 Uhr
Goto Top
Zitat von @pytrelooc:
vielen Dank schonmal für deine Hilfe !
Genau ich möchte durch den MouseOver schon diese Information erhalten, jedoch nicht in einer Messagebox sondern in dem
typischen MouseOver-Fenster das man kennt.
du meinst einen Tipptext ? dieser ließe sich bei einem Klick auf den jeweiligen Eintrag darstellen, das ist kein Problem aber ein MouseOver-Ereignis ist mir bei einer ListBox von AutoIT nicht bekannt, da wahrscheinlich von AutoIT nicht implementiert. Hier müsste man auf die Win32_Api ausweichen.
Werde mal sehen was sich da machen lässt...

Grüße Uwe
colinardo
Lösung colinardo 08.01.2014 aktualisiert um 09:10:38 Uhr
Goto Top
hier gibt es eine Hottrack-Lösung mit einem ListView-Steuerelement:
http://www.autoit.de/index.php?page=Thread&threadID=15200
pytrelooc
pytrelooc 08.01.2014 um 09:11:24 Uhr
Goto Top
Perfekt, so etwas habe ich gesucht.
Vielen Dank!