Autor Beitrag
johannes
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26



BeitragVerfasst: Sa 19.10.02 11:21 
Hallo,

konnte zu 2 Fragen in Tuts. oder anderweitig nichts finden.

Habe ein TreeView mit mehreren Nodes und deren Childs. Ist ein Node ausgewählt wechselt das Image von 0 auf 1 (o = close 1 = open). Wie bekomme ich den ausgewählten ImageIndex zurück ?

Es sind in dem TreeView mehrere Nodes mit Childs geöffnet. Nun füge ich
einen weiteren Node dazu. Ist es möglich diesen Zustand festzuhalten um ihn nach dem erneuten öffnen des TreeViews gleich wieder so angezeigt zu bekommen?

MfG
Johannes
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 19.10.02 12:45 
johannes hat folgendes geschrieben:
Ist ein Node ausgewählt wechselt das Image von 0 auf 1 (o = close 1 = open) Wie bekomme ich den ausgewählten ImageIndex zurück ?

Delphi-Hilfe -> OnGetImageIndex, OnGetSelectedIndex, bzw. so z.B. im "OnChange"-Ereignis:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
procedure TForm1.TreeView1Change(Sender: TObject;
  Node: TTreeNode);
begin
  ShowMessage(inttostr(Node.ImageIndex) + ':' +
    inttostr(Node.SelectedIndex));
end;


Zitat:
Es sind in dem TreeView mehrere Nodes mit Childs geöffnet. Nun füge ich einen weiteren Node dazu. Ist es möglich diesen Zustand festzuhalten um ihn nach dem erneuten öffnen des TreeViews gleich wieder so angezeigt zu bekommen?

:?
Wenn du einen Knoten hinzufügst, dann ist er doch drin und bleibt es IMHO auch. Und wenn du Baum dann an der Stelle wieder öffnest, dann ... :? Was willst du noch mal machen? :?:
johannes Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26



BeitragVerfasst: Sa 19.10.02 13:06 
Hi,
danke für die superschnelle Antwort !!

Zur Frage 2
Habe das TreeView in einer Artikelverwaltung (Obergruppe, Level 0 Untergruppe, Level 1 ...).

Wenn ich nun das Form schließe und später wieder öffne würde ich ganz gern die letzte Ansicht des TreeViews wieder so angezeigt bekommen wie es beim schließen war, damit ich nicht wieder die verschiedenen Gruppen öffnen muß.

Gruß

johannes
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 19.10.02 16:37 
Da ich -offen gesagt- keine eingebaute Möglichkeit kenne, wirst du das wohl selbst programmieren müssen. Jeder Knoten bietet dazu die Bool-Eigenschaft "Expanded":
ausblenden Quelltext
1:
2:
if(TreeView1.Items.Item[0].Expanded) then
  ShowMessage('Ja, der Knoten ist aufgeklappt');

Du könntest jetzt z.B. den Knotennamen zusammen mit diesem Status speichern (in einer INI, oder in der Registry). Das setzt aber voraus, dass die Knotennamen "einzigartig" sind und nicht mehrfach vorkommen.

Wenn dir das irgendwie weiterhilft.
johannes Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26



BeitragVerfasst: Sa 19.10.02 22:49 
Hi Mathias,
hilft mir super weiter !!

Da es mehrere Artikel aber nicht die strukturierten Gruppen mit gleichem Namen gibt, schreibe ich in dem "FormCloseQuery" die Namen und den Status in eine INI die sich im Programmverzeichnis befindet , das wars.

mercie vielmals

johannes