Problem mit Darstellung: TTreeView
-
Hallo!
Ich habe da ein Problem mit der TreeView.
Ich versuche ein Image (Bitmap 30x30 pixel) und einen Text als Eintrag zu haben.
Es sind keine "Untereinträge" vorhanden, nur "Haupteinträge".Leider rückt er alles jedoch um 33 Pixel ein (Eigenschaft: "Indent"). Diese kann ich jedoch nicht verändern, er setzt sie immer wieder darauf zurück.
Nun ist meine Frage: Wie kann ich das so machen, dass meine Haupt-Einträge ohne Einrückung linksbündung angezeigt werden?
"ShowLines" habe ich auch auf "false".Als Beispiel, was ich meine, kann man sich die TreeView links im Programm "MySQL Administrator" ansehen.
Vielen Dank im Voraus!
Noch eine Zusatzfrage, die Wohl nicht in diesen Bereich gehört:
Gibt es eine kostenlose Komponente / Anleitung oder modernere Darstellungsweise wie die ShortcutBar (aus Outlook)?
-
Ich habe mir nur den Screenshot des MySQL Administrator angesehen, aber ich bezweifle, dass es sich beim oberen linken Fenster um einen TreeView handelt. Ein ListView oder eine ListBox dürfte wohl wahrscheinlicher sein.
-
Hallo!
Ob man es glaubt oder nicht, aber dieses Tool wurde sogar mit dem Borland C++ Builder oder dem Delphi äquivalent geschrieben, denn die Klasse links oben heißt:
"TTntTreeView.UnicodeClass"
Das ist eine bekannte Unicode Komponente, die den Rest aber mit der TreeView gleich hat.
Viele Grüße
-
Na dann benutz' doch auch diese Komponente, oder eben doch ListView bzw. ListBox.
Frag dich halt, ob du irgendwelche der Eigenschaften benötigst, die einen TreeView auszeichnen (z.B. die Baumansicht ;)). Wenn nicht, dann brauchst du auch keinen TreeView.
-
Guten Morgen,
da hast du schon recht, ABER
es geht hier ja ums Prinzip.Ich habe nämlich die gleiche Komponente. Die ist aber (außer UniCode) 100 % äquivalent.
Nun ist es doch irgendwie möglich, die Ansicht mit der TreeView genauso hinzubekommen.Die Frage ist wie. Weiß jemand eine Antwort?
Viele Grüße
-
Dann wirst Du wohl eine eigene Routine für die Ausgabe machen müssen.
Entweder mit OnAdvancedCustomDraw, OnAdvancedCustomDrawItem, OnCustomDraw und/oder mit OnCustomDrawItem. Die Zusammenhänge sind in der BCB-Hilfe erklärt.Ich hoffe das hilft Dir...