Abend zusammen,
Hab da leider mal wieder was, wo ich nicht weiter komme. Hab dazu zwar was hier gefunden, nur bekomme ich das nicht umgesetzt.
Hier mal ein Beispiel Script
Spoiler anzeigen
#include <GuiListView.au3>
#include <WindowsConstants.au3>
Global $NewSearch = False
$GUI = GUICreate("Code Snippets", @DesktopWidth - 225, @DesktopHeight - 100, 5, 5, $WS_POPUPWINDOW, $WS_EX_APPWINDOW)
GUISetBkColor(0x000000, $GUI)
$Exit_Button = GUICtrlCreateButton("X", @DesktopWidth - 225 - 25, 5, 20, 20)
GUICtrlSetFont(-1, 10, 1000)
$Mini_Button = GUICtrlCreateButton(Chr(151), @DesktopWidth - 225 - 50, 5, 20, 20)
GUICtrlSetFont(-1, 10, 400)
$listview1 = GUICtrlCreateListView("Nr|Name|Erweit.", 5, 50, @DesktopWidth - 225 - 10, @DesktopHeight - 100 - 120)
For $i = 0 To 10
GUICtrlCreateListViewItem(Random(1, 10,1) & "|" & Random(1, 10,1) & "|" & Random(1, 10,1), $listview1)
Next
$Input_suche = GUICtrlCreateInput("Suchbegriff eingeben...", @DesktopWidth - 225 - 320, @DesktopHeight - 100 - 47, 200, 20)
$SearchButton = GUICtrlCreateButton("Suche starten", @DesktopWidth - 225 - 110, @DesktopHeight - 100 - 50, 100, 25)
GUISetState(@SW_SHOW, $GUI)
While 1
HotKeySet("^!x", "MeinExit")
$nMsg = GUIGetMsg()
Switch $nMsg
Case $Exit_Button
MeinExit()
Case $Mini_Button
GUISetState(@SW_MINIMIZE, $GUI)
Case $SearchButton
If $NewSearch = False Then
$SearchString = GUICtrlRead($Input_suche)
_Suche($SearchString)
Else
$SearchString = GUICtrlRead($Input_suche)
_Suche($SearchString)
EndIf
EndSwitch
WEnd
Func _Suche($search_string)
Local $AktuelleZeile = 0
Local $AlteZeile = 0
$SuchZeile = -1
$search_string = GUICtrlRead($Input_suche)
Local $counter = 0
If $search_string <> "Suchbegriff eingeben..." Then
Do
$AktuelleZeile = _GUICtrlListView_FindInText($listview1, $search_string, $AlteZeile);, True, True)
If $AktuelleZeile <> -1 Then
If $AktuelleZeile >= $AlteZeile Then
$AlteZeile = $AktuelleZeile
_GUICtrlListView_ClickItem($listview1, $AktuelleZeile, "left", False, 1)
$SuchZeile = $AktuelleZeile
EndIf
EndIf
$counter += 1
Until $AktuelleZeile < $AlteZeile Or $counter > 20
GUICtrlSetData($SearchButton, "neue Suche")
$NewSearch = True
Else
GUICtrlSetData($Input_suche, "")
EndIf
$SuchZeile = -1
Return $SuchZeile
EndFunc ;==>_Suche
Func MeinExit()
Exit
EndFunc ;==>MeinExit
Nun die Problemstellung:
Ich möchte, dass jeder gefundene Eintrag, irgendwie kenntlich gemacht wird und zwar dauerhaft bis entweder eine neue Suche gestartet wird oder die Markierungen per Button aufgehoben werden. Schön wäre es natürlich, wenn nur die SubItems markiert werden würden.
Das Bsp. was hier gefunden hatte, funktioniert über WM_NOTIFY. Nur da steig ich nicht wirklich durch !
Siehe hier: Klick
LG
MrB