AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ListView suchen

Ein Thema von Larsi · begonnen am 28. Nov 2007 · letzter Beitrag vom 28. Nov 2007
Antwort Antwort
Seite 1 von 2  1 2      
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#1

ListView suchen

  Alt 28. Nov 2007, 14:14
hi,
wie kann ich in ner listview suchen(auch nach subitems-eiträgen) ich möchte dass das dann in ner anderen listview steht das suchergebnis!

hab das mit dem suchen schon so hinbekommen:
Delphi-Quellcode:
var gefunden: Boolean;
    i, iCnt: integer;
    l: TListItem;
begin
  gefunden := false;
  i := 0;
  while not gefunden and (i < Form3.ListView1.Items.Count) do
    begin
      if Form3.ListView1.Items[i].Caption = Edit1.Text then
        begin
          gefunden := true;
          //Erstellen eines neuen ListItems
          l := Form15.ListView1.Items.Add;
          //Zuweisung der Beschriftung
          l.Caption := Form3.ListView1.Items[i].Caption;
          //Kopieren aller SubItems
          for iCnt := 0 to Form3.ListView1.Items[i].SubItems.Count - 1 do
            l.SubItems.Add(Form3.ListView1.Items[i].SubItems[iCnt]);
        end;
      inc(i);
    end;
  if gefunden then
    Form15.ShowModal;
end;
aber wenn ich nach nem subitem suche findet der gar nichts!

MFG Lars W.
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#2

Re: ListView suchen

  Alt 28. Nov 2007, 14:20
Zitat von Larsi:
aber wenn ich nach nem subitem suche findet der gar nichts!
Wie auch, wenn du nur auf die Caption prüfst.
Genau wie du die SubItems kopierst, musst du sie auch durchsuchen, mit einer Schleife.
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.
  Mit Zitat antworten Zitat
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#3

Re: ListView suchen

  Alt 28. Nov 2007, 14:26
kann ich das in die schleife mit reintun oder muss ich da ne neue nehmen???
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#4

Re: ListView suchen

  Alt 28. Nov 2007, 14:27
Zitat von Larsi:
kann ich das in die schleife mit reintun oder muss ich da ne neue nehmen???
Eine neue sonst wird das nichts ...
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: ListView suchen

  Alt 28. Nov 2007, 14:31
Und das im else-Zweig
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#6

Re: ListView suchen

  Alt 28. Nov 2007, 14:31
Ach übrigens: Wenn du deinen gewünschten Eintrag gefunden hat, dann kannst du die Schleife mit Break verlassen und musst nicht auf eine Variable wie "gefunden" prüfen.
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.
  Mit Zitat antworten Zitat
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#7

Re: ListView suchen

  Alt 28. Nov 2007, 14:35
hab das grad versucht aba dann is alles irgendwie() abgestürzt!
kannste mir da bidde viellecht n beipsiel für geben
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: ListView suchen

  Alt 28. Nov 2007, 14:36
Bei break und exit reagieren einige allergisch ("schlechter Stil").
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#9

Re: ListView suchen

  Alt 28. Nov 2007, 14:38
kapier ich jez net so ganz hat denn keiner n bisschen zeit um mir da nbeipsiel für zu machen???
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: ListView suchen

  Alt 28. Nov 2007, 14:41
Ungetestet:
Delphi-Quellcode:
var gefunden: Boolean;
    i, j, iCnt: integer;
    l: TListItem;
begin
  gefunden := false;
  i := 0;
  while not gefunden and (i < Form3.ListView1.Items.Count) do
    begin
      if Form3.ListView1.Items[i].Caption = Edit1.Text then
        begin
          gefunden := true;
          //Erstellen eines neuen ListItems
          l := Form15.ListView1.Items.Add;
          //Zuweisung der Beschriftung
          l.Caption := Form3.ListView1.Items[i].Caption;
          //Kopieren aller SubItems
          for iCnt := 0 to Form3.ListView1.Items[i].SubItems.Count - 1 do
            l.SubItems.Add(Form3.ListView1.Items[i].SubItems[iCnt]);
        end
      else
        begin
          for j := 0 to Form3.ListView1.Items[i].SubItems.Count - 1 do
            if Form3.ListView1.Items[i].SubItems[j] = Edit1.Text then
              begin
                gefunden := true;
                //Erstellen eines neuen ListItems
                l := Form15.ListView1.Items.Add;
                //Zuweisung der Beschriftung
                l.Caption := Form3.ListView1.Items[i].Caption;
                //Kopieren aller SubItems
                for iCnt := 0 to Form3.ListView1.Items[i].SubItems.Count - 1 do
                  l.SubItems.Add(Form3.ListView1.Items[i].SubItems[iCnt]);
                break; //einmal reicht wohl
              end;
        end;
      inc(i);
    end;
  if gefunden then
    Form15.ShowModal;
end;
Da wir nun aber 2 mal dasselbe tun, kann man über eine Unterprozedur nachdenken.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz