Autor Beitrag
King_Crasher
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37

WIN XP
Delphi 2003
BeitragVerfasst: So 05.02.06 12:53 
Hi,

kann mir bitte jemand sagen, wie ich in eine ListBox Spalten einfüge?(So ähnlich wie bei Excel) und wie ich unter die Spalten Einträge bekomme?

Danke


Moderiert von user profile iconChristian S.: Topic aus Sonstiges (Delphi) verschoben am So 05.02.2006 um 12:56
AXMD
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 4006
Erhaltene Danke: 7

Windows 10 64 bit
C# (Visual Studio 2019 Express)
BeitragVerfasst: So 05.02.06 12:56 
Mit einer ListBox gar nicht; such mal nach TListView in der OH ;)

AXMD
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: So 05.02.06 12:57 
Hallo!

In eine Listbox bekommst Du nur Spalten wie in einer Zeitung. Schau Dir für das, was Du haben möchtest, mal die ListView-Komponente an. :-)

Grüße
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
King_Crasher Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37

WIN XP
Delphi 2003
BeitragVerfasst: So 05.02.06 15:07 
Ok ich hab das Ding gefunden. Aber ich kan damit leider noch nichts anfangen. Könnt ihr mir nicht sagen wie ich drei Spalten hinbekomme und wie ich in diese einen Wert aus einem Editfeld bekomme???

Danke
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: So 05.02.06 15:34 
Die Einträge eines ListViews sind vom Typ TListItem;
Mit Caption wird 1.Spalte beschriftet, alle weitern über die Eigenschaft SubItems.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
var
 item: TListitem;
begin
 item := listview.Items.Add;
 item.Caption := '<Text>';
 item.SubItems.Add('<text>');
 item.SubItems.Add('<text>');

_________________
Markus Kinzler.
King_Crasher Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37

WIN XP
Delphi 2003
BeitragVerfasst: So 05.02.06 18:33 
Hi
@mkinzler wenn ich den Quelltext so übernehmen fügt er immer neben einander das Wort ein. Aber nicht die Anderen. Und ich müsste für deinen Befehl einen Button Setzen was ich aber nicht möchte. Gibt es den kein Object in Delphi wo ich die Überschriften festlegen kann und unter diese den Eintrag eines edit feldes legen kann???


Danke
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: So 05.02.06 18:50 
mein Quellcode war nur als Beispiel gedacht. Wobei <Text> als Platzhalter dienen sollte ;-)
Also die Überschriften setzt über die Eigenschaft Columns.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
 col: TListColumn;
...
col := listview.Columns.Add;
col.Caption := '1.Spalte';

Die Werte setzt du wie im Beispiel angeben, Ein solcher Codeblock erstellt genau eine Zeile!
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
 
item := listview.Items.Add;
 item.Caption := 'Wert 1.Spalte';
 item.SubItems.Add('Wert 2.Spalte');
 item.SubItems.Add('Wert 3.Spalte');
...

_________________
Markus Kinzler.
King_Crasher Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37

WIN XP
Delphi 2003
BeitragVerfasst: Mo 06.02.06 18:50 
ich habs probiert. Er fügt aber nur den ersten Wert ein. Die Anderen editfelder überhaupt nicht. Und einen Überschrift kommt auch nicht. Was nu???
Meine Editfelder haben den Namen: 1.Bez 2.Hub 3.Power
In Die erste Spalte soll das Wort "Bezeichnung" in die zweite das Wort "Hubraum" und in die Letzte das Wort "Power". Die Editfeldersollen unter die Einträge.
vielleicht kannst du mir ja mit diesen werten einen Kompletten Quelltext schicken.
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mo 06.02.06 18:52 
Zeig uns doch erst einmal Deinen Quelltext, dann schauen wir, was falsch dran ist. :-)

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
King_Crasher Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37

WIN XP
Delphi 2003
BeitragVerfasst: Di 07.02.06 10:41 
Hier ist mein Quelltext:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
var 
 col, col1, col2: TListColumn;
 item: TListitem;

procedure TForm1.Button1Click(Sender: TObject);
begin
col := listview1.Columns.Items[0];
col.Caption := 'Bezeichnug';
col1:=listview1.Columns.Items[1];
col1.caption := 'Hubraum';
col2:= listview1.Columns.Items[2];
col2.caption :='KW';

item := listview1.Items.Add;
 item.Caption := Bez.Text;
 item.SubItems.Add(Hub.Text);
 item.SubItems.Add(Power.Text);
end;
Kroko
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1284

W98 W2k WXP
Turbo D
BeitragVerfasst: Di 07.02.06 10:46 
Sind denn die Spalten über den OI überhaupt existent :?:

_________________
Die F1-Taste steht nicht unter Naturschutz und darf somit regelmäßig und oft benutzt werden! oder Wer lesen kann, ist klar im Vorteil!
King_Crasher Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37

WIN XP
Delphi 2003
BeitragVerfasst: Di 07.02.06 11:03 
Wie meinst du das existenz??? Ich hab drei Columns erstellt. Hab allen drei eine Caption gegeben. Meinst du das??
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Di 07.02.06 11:13 
Du hast sie iun der IDE erstelllt richtig? In deinem geposteten Code hast du nur Referenzen(Zeiger) definiert sind, welche du auf möglicherweise undefinierte Werte setzt (istview1.Columns.Items[0]).

_________________
Markus Kinzler.
andras
ontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 460

Win XP, Win Vista Home Premium, Ubuntu Dapper Drake
Delphi 2005 Pers
BeitragVerfasst: Di 07.02.06 15:57 
bin mir zwar nicht sicher, aber vieleicht hilft dir das zusätzlich:
ausblenden Delphi-Quelltext
1:
Listview1.viewstyle:=vsreport;					
King_Crasher Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37

WIN XP
Delphi 2003
BeitragVerfasst: Sa 11.02.06 12:51 
@mkinzler

Wie meinst du das? Versteh dich nicht so recht. Was ist eine IDE? Ich dachte man kann das so machen, wie mit einer TStatusBar. Dort kann man ja auch die einzelnen erstellten Panels ansprechen.
Heiko
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: Sa 11.02.06 13:03 
@user profile iconKing_Crasher: Er hat gefragt ob die Spalten wirklich existieren (also in der IDE). Ansonten mache es mal so

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
var 
 col, col1, col2: TListColumn;
 item: TListitem;

procedure TForm1.Button1Click(Sender: TObject);
begin
col := listview1.Columns.Items.Add;
col.Caption := 'Bezeichnug';
col1:=listview1.Columns.ItemsAdd;
col1.caption := 'Hubraum';
col2:= listview1.Columns.ItemsAdd;
col2.caption :='KW';

item := listview1.Items.Add;
 item.Caption := Bez.Text;
 item.SubItems.Add(Hub.Text);
 item.SubItems.Add(Power.Text);
end;


Allerdings würde ich das Befüllen der Items dann in eine extra Prozedur stecken und die Überschriften nur einmal erzeugen, ansonten musst du die alten immer wieder klöschen ;).
King_Crasher Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37

WIN XP
Delphi 2003
BeitragVerfasst: Sa 11.02.06 18:47 
@Heiko
Danke für den Quelltext aber in Zeile 7 nach "Items" zeigt er einen Fehler und zwar "[erwartet aber . gefunden).
Heiko
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: So 12.02.06 10:13 
Dann war es glaube ich so hier ;): listview1.Columns.Add;
King_Crasher Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37

WIN XP
Delphi 2003
BeitragVerfasst: So 12.02.06 17:30 
Jetzt kommt zwar kein Fehler mehr. aber er fügt immer nur den wert aus "Bez.text" ein. Könnte es an der Bezeichnung liegen. Col, Col1 und Col2??? Hatte schon mal ein Problem als ich das alles gleich genannt hab.
Heiko
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: So 12.02.06 17:45 
Um Speichervariablemn zu sparen kannst du es so machen ;):

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
col := ListView1.Columns.Add;
col.Caption := 'Bezeichnug';
col := ListView1.Columns.Add;
col.Caption := 'Hubraum';
col := ListView1.Columns.Add;
col.Caption :='KW';