AGB  ·  Datenschutz  ·  Impressum  







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

treeview klicks zuweisen....

Ein Thema von Muetzi · begonnen am 21. Nov 2003 · letzter Beitrag vom 21. Nov 2003
Antwort Antwort
Muetzi
(Gast)

n/a Beiträge
 
#1

treeview klicks zuweisen....

  Alt 21. Nov 2003, 02:05
hi,

ich habe eine treeview mit folgenden einträgen:

Code:
Hauptthema
           Punkt1
           Punkt2
Hauptthema1
           Punkt3
           Punkt4
Und zwar brauche ich es so, dass wenn man auf hauptthema klickt nur die einträge aufklappen, und wenn man auf einen punkt klickt halt jeder punkt einen integer wert bekommen muss
punk1 muss 1 sein
punkt2 = 2
punkt3 = 3
punkt4 = 4

u.s.w.

Wie geht das? Die Punkte sind alle in Verschiedenen Hauptthemen.

Gruß

Muetzi

Hab absolut keinen Ansatz!
  Mit Zitat antworten Zitat
Touchdown

Registriert seit: 17. Feb 2003
227 Beiträge
 
#2

Re: treeview klicks zuweisen....

  Alt 21. Nov 2003, 09:05
Du hängst an die SubItems ein Objekt, beim Treeviewklick brauchst du nur noch prüfen, ob an dem gewählten TreeviewItem ein Objekt hängt. Wenn ja, dann diesen einen hochzählen.

Es umzusetzen ist nicht ganz so einfach aber im Grunde ist es nicht mehr als oben beschrieben.

Du kannst dir eine eigene Klasse machen, die nur einen Integerwert hat. Besser wäre aber einen Integer direkt dranhängen. Den zweiten Weg würde ich nur verfolgen, wenn der erste Weg funktioniert hat.
function getallfornothing: TGoldesel;
begin
result := TGoldesel.create;
end;
  Mit Zitat antworten Zitat
Muetzi
(Gast)

n/a Beiträge
 
#3

Re: treeview klicks zuweisen....

  Alt 21. Nov 2003, 12:27
könnte mir da jemand ein beispiel geben?
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#4

Re: treeview klicks zuweisen....

  Alt 21. Nov 2003, 13:23
Hi,

die Einträge in einem TreeView sind TTreeNode's. Dort findest Du die Eigenschaft Data vom Typ Pointer.
Dieser ist, wenn nicht durch Dich zugewiesen nil. Dort kannst du dir nun Zeiger auf Records oder Objecte merken. Hast du das selectierte TreeNode, so brauchst du nur in dem mitgelieferten Record(Zeiger-Dereferenzierung) auf den betreffenden Eintrag zugreifen(oder eben über das gehaltene Object).

Aus dem Kopf mal ein kleines Bsp.:

Delphi-Quellcode:
// bei Aufbau des Tree
var FPCounter : PDWord;
....
  New(FPCounter);
   FPCounter^ := Count; // Dein Durchlaufzähler o.ä.
   TreeNode.Data := FPCounter;
....
var FIndex : DWord;
....
// beim lesen; hier ist jetzt TreeNode der selectierte knoten
  MeinIndex := DWord(TreeNode.Data^);
....
ja, das wars schon.

Gruß oki

{Edit: habe die Zuweisung auf FPCounter korrigiert}
  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 05:10 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