Hallo Leute,
ich stehe vor einem Problem. Ich habe eine Art Adressbuch für firmeninterne Telefon-Durchwahlen inkl Suchfunktion geschrieben.
Ich möchte dass das Skript den Eintrag, der dem Suchwort am ähnlichsten ist, markiert ohne dass das Input-Feld dabei den Fokus verliert.
Hier das Skript:
Spoiler anzeigen
#include
#include
#include
HotKeySet("{Esc}","_exit")
#Region ### START Koda GUI section ### Form=
Opt("GUIOnEventMode",1)
$GUI = GUICreate("Test Durchwahlbuch", 311, 286, 192, 124)
GUISetOnEvent($GUI_EVENT_CLOSE,"_exit")
$Label = GUICtrlCreateLabel("Suche:", 8, 8, 38, 17)
$Input = GUICtrlCreateInput("", 8, 32, 289, 21)
$Listview = GUICtrlCreateListView("",8,64,297,213,$LVS_SORTASCENDING)
_GUICtrlListView_AddColumn($Listview,"Durchwahl",97,0)
_GUICtrlListView_AddColumn($Listview,"Name",200,0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
$aIni = IniReadSection(@ScriptDir&"\test.ini","Durchwahl")
For $i = 1 To UBound($aIni)-1 Step 1
$iItem = _GUICtrlListView_AddItem($Listview,$aIni[$i][0])
_GUICtrlListView_AddSubItem($Listview,$iItem,$aIni[$i][1],1)
Next
$read_prev = ""
WHile 1
$read_after = GUICtrlRead($Input)
If $read_after <> $read_prev Then
$iI = _GUICtrlListView_FindInText($Listview,$read_after,-1)
ToolTip($iI)
_GUICtrlListView_EnsureVisible($Listview,$iI)
;_GUICtrlListView_SetSelectionMark($Listview,$iI)
Else
$iI = 0
EndIf
_GUICtrlListView_SetItemSelected($Listview,$iI)
$read_prev = $read_after
$read_after = ""
Sleep(10)
WEnd
Func _exit()
Exit
EndFunc
Danke schonmal vorab.
P.S.: Die test.ini wird gebraucht und muss im @ScriptDir liegen.