AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Virtual TreeView, pro SubItem verschiedene Spalten
Thema durchsuchen
Ansicht
Themen-Optionen

Virtual TreeView, pro SubItem verschiedene Spalten

Ein Thema von hoika · begonnen am 7. Nov 2007 · letzter Beitrag vom 15. Nov 2007
Antwort Antwort
Seite 1 von 2  1 2      
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#1

Virtual TreeView, pro SubItem verschiedene Spalten

  Alt 7. Nov 2007, 17:05
Hallo #,

jetzt will ich diese Sache mit dem VT endlich mal in Angriff nehmen

Aber

Ich habe folgendes Problem.
Der TreeView zeigt in der 1. Ebene Projekte an, pro Projkt ein Item, klar.
Klappe ich ein Projekt auf, zeigt er mir Gruppen, z.B. Rechnung (Re), Lieferschein (LS).
Klappe ich eine Gruppe auf, erscheinen die eigentlichen Daten (z.B. Re-Nr, LS-Nr).

Aber 1
Je nach Gruppe werden verschiedene Daten angezeigt.
Bsp:
Bei Rechnung nur die Nummer, bei Lieferschein Nr und "Lieferschein zurück),
also bei Rechnung 1 Spalte, bei Lieferschein 2 Spalten (nur als Bsp).

Ich würde gern bei jeder verschiedenen Gruppe die Header ändern, ebenso die Spaltenanzahl.

Das würde dann in etwa so aussehen, wie ein ListView im TreeView.

Ich habe mit die descendants angesehen, nix.
(auch das nested header ist ja nicht dass, was ich brauche)


Zur Not könnte ich ja folgendes machen
das erste Item unterhalb der Rechnung ist der Header, der wird dann grau (?),
darf nicht auswählbar sein (?).

Nur muss ich die Spaltenzahl ändern können ?
Über Tabulator "lösen" (?)


Wie würdet ich das denn machen?


Danke


Heiko
Heiko
  Mit Zitat antworten Zitat
dominikkv

Registriert seit: 30. Sep 2006
Ort: Gundelfingen
1.109 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Virtual TreeView, pro SubItem verschiedene Spalten

  Alt 7. Nov 2007, 17:16
der ViertualTreeView hat die Eigenschaft .Header welches wieder die Einegnschaft .Columns hat wo du die Anzahl und Beschriftung der Header verändern kannst.
Dominik
Wer anderen eine Grube gräbt, hat ein Gruben-Grab-Gerät!
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Virtual TreeView, pro SubItem verschiedene Spalten

  Alt 7. Nov 2007, 18:06
Hallo,

korrekt.
Aber ich brauche ja nach aufgeklapptem Item verschiedene Header.

Wie oben gesagt, bei Lieferschein z.B. 2 Spalten mit Headerbeschriftung,
bei Rechnung 1.

Sowas wie Subheaders

Delphi-Quellcode:
0815
  |-- Rechnung
        |-- Re.-Nr: <- die Zeile grau, weil Header
        |-- 0815-01
        |-- 0815-02

  |- Lieferschein
        |-- Nr: zurück <- die Zeile grau, weil Header
        |-- LS_0815_01 ja
        |-- LS_0815_02 nein

so in etwa


Heiko
Heiko
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#4

Re: Virtual TreeView, pro SubItem verschiedene Spalten

  Alt 7. Nov 2007, 19:15
Hallo Heiko,

ich glaube nicht, daß die von dir gewünschte Darstellung mit dem VST direkt zu erreichen ist. Die einzige Möglichkeit besteht vielleicht darin, auf die Unterstützung der Komponente bei der Spaltenanzeige zu verzichten und alle Daten auf der untersten Stufe selbst zu zeichnen.

Warum trennst du die Anzeige der Daten nicht? Mit einer Baumanzeige könnte sich der Anwender in der Verzeichnisstruktur bewegen. Wählt er ein Verzeichnis an, das nur noch Blattknoten und keine Gruppenknoten mehr enthält, stellst du alle Blattknoten in einer Listenanzeige dar. Die Listenanzeige kannst du dann für jede Gruppe individuell gestalten. Beide Elemente - Baumanzeige und Listenanzeige - kannst du mit dem VST oder den Standardkomponenten (TTreeView, TListView) realisieren. Eine einzelne Komponente wäre mir wegen der unterschiedlichen Datenstruktur auf der untersten Ebene zu unübersichtlich.

Gruß Hawkeye
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Virtual TreeView, pro SubItem verschiedene Spalten

  Alt 7. Nov 2007, 19:36
Hallo,

es geht darum, dass bei ExpandAll eines Projekt-Knotens
alle Daten des Projektes angezeigt werden sollen.

Es geht also um einen schnellen Überblick,
was ist beim Projekt gelaufen.


Heiko
Heiko
  Mit Zitat antworten Zitat
OG Karotte
(Gast)

n/a Beiträge
 
#6

Re: Virtual TreeView, pro SubItem verschiedene Spalten

  Alt 7. Nov 2007, 20:05
Hast Du Dir schonmal 'BeforeCellPaint' angesehen? Dadurch kannst Du extremen Einfluss auf Aussehen und Inhalt der jeweiligen Zelle nehmen. Somit sollte es möglich sein entspr. (Sub)Header unterhalb des jeweiligen Knoten zusetzen.
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Virtual TreeView, pro SubItem verschiedene Spalten

  Alt 8. Nov 2007, 08:06
ggf auch AfterCellPaint, sonst kommt es beim Zeichnen von Grafiken zu Problemen, wenn die Zeile Markiert ist (blauer Balken).

Ansonsten gibt es in VST keine Möglichkeit die Spaltenanzahl je Zeile dynamisch anzupassen. Das gibt das Konzept nicht her.
Sven Harazim
--
  Mit Zitat antworten Zitat
generic

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

Re: Virtual TreeView, pro SubItem verschiedene Spalten

  Alt 8. Nov 2007, 08:49
Ich meine bei Mike auf der Homepage eine abgeleitete Klasse gesehen die das kann.
Im Namen war etwas mit Subheadern.
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: Virtual TreeView, pro SubItem verschiedene Spalten

  Alt 8. Nov 2007, 09:33
Hallo,

du meinst nested header.
Dabei wird aber "nur" im oberen Bereich eine zweite Header-Spalte angezeigt.

Ich muss aber pto Item verschiedene Header zeigen.

Am einfachsten verständlich ist es,
sich ein ListView in TreeView vorzustellen.

Es würde viell. ja erst mal reichen,
wenn die ListItems verschiedene Spalten-Anzahl hätten.
Geht ja aber leider auch nicht.
Ich will auch das AutoSize benutzen,
wenn ich das jetzt alles selber malen müsste ;(

Ich befürchte, das geht nur mit dem QuantumGrid,
obwohl ich in deren Screenshots und Handbuch auch nichts gesehen habe.


Heiko
Heiko
  Mit Zitat antworten Zitat
stifflersmom

Registriert seit: 8. Dez 2005
Ort: 24994 Holt
374 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#10

Re: Virtual TreeView, pro SubItem verschiedene Spalten

  Alt 8. Nov 2007, 09:44
Ich glaube, dass es dennoch möglich ist,
das gewünschte Ergebnis zu erreichen.

Für den VS legen wir zu Darstellung ja eine eigene Datenstruktur an,
und die können wir uns ja nach Belieben zusammenstellen.

Delphi-Quellcode:
 Type
    Ptreedbdata = ^TTreeDbData;
    TTreeDbdata = Record
      categories_id : Integer;
      parent_id : Integer;
      Caption : String;
      report_ID : Integer;
      Icon_Index : Integer;
      ReportFile : String;
      Faktura : Integer;
    end;
Pass Dir die Struktur einfach zusammen wie es Dir gefällt.

Und im GetText-Ereignis des VS kannst Du dann dementsprechend reagieren
und die Texte anpassen
Delphi-Quellcode:
var
  Data: PTreeDBData;
begin
  Data:=ReportTree.GetNodeData(Node);
  If Data.Faktura = 1 Then Celltext := 'Rechnung'
  ... bla bla
end;
Und ähnlich könntest Du beim Zeichnen der Nodes vorgehen.

Moin
  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 17:03 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