AGB  ·  Datenschutz  ·  Impressum  







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

selektierte Items in Treeview finden?

Ein Thema von padawan · begonnen am 24. Mär 2013 · letzter Beitrag vom 25. Mär 2013
Antwort Antwort
padawan

Registriert seit: 22. Nov 2010
Ort: Berlin Rudow
6 Beiträge
 
Delphi 2009 Architect
 
#1

selektierte Items in Treeview finden?

  Alt 24. Mär 2013, 16:33
Moin Delphi-Freunde!

Vorweg: seit 2 Tagen suche ich in der OH sowie in den Delphi-Foren nach einer Lösung,
wenn ich fündig wurde, gabs ne Exception an die Backe.

So einfach wie bei ListBox/ListView ist es wohl nicht.

Das Prog soll die Ordnerstruktur meiner CDs/DVDs in der TreeV. listen,
speichern oder ausdrucken. Klappt bis hierher auch.

Aber Ordnernamen in der Treeview wie '148d6b3330f8e16a2474d0914eb1' will ich nicht
drucken. Will diese markieren(per Multiselect)und beim drucken ignorieren.

Sollte es dafür keine Lösung geben??
Im meinem Buch 'Delphi 6' wird Treeview garnicht erwähnt und was ich im inet fand,
beschert mir haufenweise Errors(Selected, Selected.AbsoluteIndex).

NEED HELP!!!

Danke Euch im Voraus!!!
Gruß Uli
Uli
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: selektierte Items in Treeview finden?

  Alt 24. Mär 2013, 21:57
Da du ja mit Sicherheit die Items im Tree durchlaufen musst um sie drucken zu können, solltest du einfach eine kleine Abfrage einbauen, ob sie ausgewählt sind oder nicht.

Hier mal ein kleines Codebeispiel, dass dir alle selektierten Items im Tree ausgibt:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
I : Integer;
begin
 for I := 0 to TreeView1.Items.Count - 1 do begin
   if TreeView1.Items.Item[I].Selected then ShowMessage(TreeView1.Items.Item[i].Text);
 end;
end;

Ich denke, das kannst du dann auf dein Vorhaben umbauen.
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#3

AW: selektierte Items in Treeview finden?

  Alt 25. Mär 2013, 09:38
Ich würde zum Ausdrucken eine Kopie erstellen und dann die markierten Einträge entfernen.

Delphi-Quellcode:
Procedure CopyTreeViewUnselectedItems (aSource, aDest : TTreeView);
var
  i : Integer;

begin
  aDest.items.assign(aSource.Items);
  aDest.StateImages := aSource.StateImages;
  aDest.Images := aSource.Images;
  
  for i := aDest.Items.Count-1 downto 0 do
    if aSource.Items[i].Selected then // Selected wird nicht mitkopiert, daher im Original prüfen
      aDest.Items[i].Delete;
end;
  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 12:23 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