Listview durchsuchen

Für Fragen von Einsteigern und Programmieranfängern...
Benutzeravatar
theo
Beiträge: 10872
Registriert: Mo 11. Sep 2006, 19:01

Re: Listview durchsuchen

Beitrag von theo »

DonMigos hat geschrieben: Dazu muss man noch unter Uses den Eintrag LazUTF8 machen (nicht LCLProc, weil das laut Hilfe veraltet ist).
Stimmt, ist aber letztlich die gleiche Funktion, die da aufgerufen wird.

Carina
Beiträge: 13
Registriert: Di 18. Jun 2013, 18:50

Re: Listview durchsuchen

Beitrag von Carina »

Danke für die schnelle Hilfe ;)

wieso klappt denn mein folgender code nicht (soll wenn kein Ergebnis gefunden wurde 'Keine Ergebnisse gefunden' ausgeben)

Code: Alles auswählen

if  Pos(SuchWort,UTF8UpperCase(ListView_Buchuebersicht.Items[e].Caption))<0  AND
  Pos(SuchWort,UTF8UpperCase(ListView_Buchuebersicht.Items[e].SubItems[a]))<0
  then  Form_gefunden.Memo_gefunden.lines.Add('Keine Ergebnisse gefunden!'); 
er sagt dann immer: got boolean expected int64

DonMigos
Beiträge: 52
Registriert: Mi 15. Mai 2013, 21:21
OS, Lazarus, FPC: Win7 (L 1.0.8 FPC 2.6.2)
CPU-Target: 32Bit

Re: Listview durchsuchen

Beitrag von DonMigos »

Versuch mal:

Code: Alles auswählen

 
if (Pos(SuchWort,UTF8UpperCase(ListView_Buchuebersicht.Items[e].Caption)) = 0)  AND    
   (Pos(SuchWort,UTF8UpperCase(ListView_Buchuebersicht.Items[e].SubItems[a])) = 0) then  
    Form_gefunden.Memo_gefunden.lines.Add('Keine Ergebnisse gefunden!'); 
zusätzliche Klammern braucht man hier glaubig und wenn du auf = 0 prüfst ist es richtig, weil die Funktion Pos immer 0 zurückgibt wenn sie nichts findet.

[Edit] Dein Code schreibt aber (wenn er in einer Schleife läuft) für jeden Eintrag, den du aus dem ListView überprüfst und bei dem das Suchwort nicht gefunden wird, einen Eintrag in das Memo.
Ich weiß nicht ob du das so wolltest.

Carina
Beiträge: 13
Registriert: Di 18. Jun 2013, 18:50

Re: Listview durchsuchen

Beitrag von Carina »

danke, habs jetzt bereits mit boolean gelöst ;)

Antworten