AGB  ·  Datenschutz  ·  Impressum  







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

VirtualStringTree - IncrementalSearch

Offene Frage von "karl der große"
Ein Thema von karl der große · begonnen am 20. Mär 2005 · letzter Beitrag vom 8. Jan 2006
Antwort Antwort
karl der große

Registriert seit: 4. Mär 2005
40 Beiträge
 
#1

VirtualStringTree - IncrementalSearch

  Alt 20. Mär 2005, 12:03
Hallo!

Hat jemand von Euch eine Ahnung wie IncrementalSearch beim VirtualStringTree funktioniert.

Hat vielleicht jemand einige Code-Schnippsel.

Danke
  Mit Zitat antworten Zitat
Albi

Registriert seit: 4. Mai 2003
Ort: Berlin
458 Beiträge
 
Delphi 7 Professional
 
#2

Re: VirtualStringTree - IncrementalSearch

  Alt 20. Mär 2005, 13:07
Hallo,

wie das genau funtzt kann ich dir nicht sagen aber Du kannst Dir ja mal bei Mike Lischke die Online Dokumentation zur VirtualStringTree anschauen.

Diese liegt als PDF und HTML-Format vor. Wenn Du dir PDF herunterlädst, schau dir die Seite 383 an, da sollte Dir weitergeholfen werden.
Gruß

Albi
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#3

Re: VirtualStringTree - IncrementalSearch

  Alt 20. Mär 2005, 13:50
easy...

IncrementalSearch := isAll;

schon ist an. wenn du auf die suche genauer reagieren möchtest dann musst du das OnIncrementalSearch Ereignis erweitern.

die onlinehilfe beschreibt das ganz gut, zusammengefasst funktioniert das wie eine normale suche.

This event is integral part of the incremental search functionality (see also Keyboard, hotkeys and incremental search). It is triggered during search for a node which matches the given string. Similar to other compare routines return a value < 0 if the node's caption is considered as being before the given text, = 0 if it is the same and > 0 if it is considered being after the given text.



Delphi-Quellcode:
procedure TfrmProperties.VST3IncrementalSearch(Sender: TBaseVirtualTree; Node: PVirtualNode; const Text: WideString;
  var Result: Integer);

var
  S, PropText: string;


begin
  // Note: This code requires a proper Unicode/WideString comparison routine which I did not want to link here for
  // size and clarity reasons. For now strings are (implicitly) converted to ANSI to make the comparison work.
  // Search is not case sensitive.
  S := Text;
  if Node.Parent = Sender.RootNode then
  begin
    // root nodes
    if Node.Index = 0 then
      PropText := 'Description'
    else
      PropText := 'Origin';
  end
  else
  begin
    PropText := PropertyTexts[Node.Parent.Index, Node.Index, ptkText];
  end;

  // By using StrLIComp we can specify a maximum length to compare. This allows us to find also nodes
  // which match only partially.
  Result := StrLIComp(PChar(S), PChar(PropText), Min(Length(S), Length(PropText)))
end;
Notes
Usually incremental search allows to match also partially. Hence it is recommended to do comparison only up to the length

of the shorter string.
  Mit Zitat antworten Zitat
karl der große

Registriert seit: 4. Mär 2005
40 Beiträge
 
#4

Re: VirtualStringTree - IncrementalSearch

  Alt 20. Mär 2005, 16:07
Das Beispiel hab ich schon gefunden, aber ich versteh eigentlich das ganze Kapitel nicht, kann mir da jemand vielleicht mit einem eigenen Beispiel helfen??

Gruss Karl
  Mit Zitat antworten Zitat
20. Mär 2005, 18:35
Dieses Thema wurde von "Daniel" von "Datenbanken" nach "VCL-Komponenten und Controls" verschoben.
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#6

Re: VirtualStringTree - IncrementalSearch

  Alt 21. Mär 2005, 13:37
im string wird übergeben was du eingegeben hast.
als ergebnis lieferst du (Result) ob der "node"-Wert größer, kleine oder gleich dem "text" ist.

von node musst du eigendlich nur den wert ermitteln der genutzt werden soll.
im normalfall ist das der text der in baum ausgegeben wird.

wenn das immer noch nicht ausreichen sollte poste ich ein beispiel...
  Mit Zitat antworten Zitat
ratloser

Registriert seit: 4. Mai 2005
Ort: Linz
36 Beiträge
 
#7

Re: VirtualStringTree - IncrementalSearch

  Alt 8. Jan 2006, 22:54
kannst du mir mal ein beispiel posten

Danke
Vielen Dank!

Konrad
  Mit Zitat antworten Zitat
Antwort Antwort


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 17:26 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