Autor Beitrag
bwolf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 50



BeitragVerfasst: Mi 31.10.07 15:46 
Hi all,

folgende frage:
Ich will in einer Combobox mehrere Werte nebeneinander darstellen, ähnlich wie bei dieser:

Moderiert von user profile iconNarses: Screenshot als Anhang hochgeladen.

Geht das mit der Standard-Combo?
Danke für eure Hilfe,
greets ben
Einloggen, um Attachments anzusehen!
Logikmensch
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 390

Win XP
Delphi 2007 Prof., XE2, XE5
BeitragVerfasst: Do 01.11.07 14:05 
Das geht schon mit der Standard-Kompo, allerdings musst Du die Items dann selber zeichnen und Dich auch selber um das Anzeigen der Spalten (mit den richtigen Breiten) kümmern.

überschreibe die Methode DrawItem.

_________________
Es gibt keine Probleme - nur Lösungen!
zuma
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 660
Erhaltene Danke: 21

Win XP, Win7, Win 8
D7 Enterprise, Delphi XE, Interbase (5 - XE)
BeitragVerfasst: Do 01.11.07 14:45 
selber zeichnen ??? wie kommt man darauf ??

würde es in etwa so machen:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
// nr z.b aus Datenmenge, schleifenzähler, etc. generieren
lNr := 1
// das, was in der Cobo angezeigt werden soll, zusammen setzen
// (hier sollte natürlich eine Formatierung stattfinden, damit
// die Spaltenbreiten gleichmäßig passen
lAnzeigestring := wert1 + ', ' + wert2 + ', ' + wert3; 
// in die Combobox eintragen
CoBo_Test.Items.AddObject(lAnzeigestring, TObject(lNr));


@logikmensch:
Frage zu deiner signatur:
wie kann es eine lösung geben, wenn gar kein problem da ist ?? ;)
Logikmensch
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 390

Win XP
Delphi 2007 Prof., XE2, XE5
BeitragVerfasst: Do 01.11.07 14:50 
Ja, so kann man es natürlich auch machen, aber optisch gesehen ist es nicht dasselbe.

Zu meiner Signatur: Nur Beiwerk - keine weitere Beachtung schenken.
bwolf Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 50



BeitragVerfasst: Mo 05.11.07 11:25 
user profile iconzuma hat folgendes geschrieben:
selber zeichnen ??? wie kommt man darauf ??

würde es in etwa so machen:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
// nr z.b aus Datenmenge, schleifenzähler, etc. generieren
lNr := 1
// das, was in der Cobo angezeigt werden soll, zusammen setzen
// (hier sollte natürlich eine Formatierung stattfinden, damit
// die Spaltenbreiten gleichmäßig passen
lAnzeigestring := wert1 + ', ' + wert2 + ', ' + wert3; 
// in die Combobox eintragen
CoBo_Test.Items.AddObject(lAnzeigestring, TObject(lNr));


@logikmensch:
Frage zu deiner signatur:
wie kann es eine lösung geben, wenn gar kein problem da ist ?? ;)


Danke für die Tipps, könnt ihr mir noch n Hinweis geben, wie ich das mit der Spaltenbreite am besten mache?
Ahja, mit
ausblenden Delphi-Quelltext
1:
Format('%-10s',['String'])					

siehts ganz gut aus ;)
Logikmensch
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 390

Win XP
Delphi 2007 Prof., XE2, XE5
BeitragVerfasst: Di 06.11.07 10:34 
Aber ich muss doch nochmal einwenden (an zuma), dass das Selberzeichnen wirklich
1. keine Große Sache ist (da viele Beispiele auch hier im Forum) und
2. gut zum üben der Sache an sich
3. professionell ausschaut.

:-)

_________________
Es gibt keine Probleme - nur Lösungen!