Einzelnen Beitrag anzeigen

lucius

Registriert seit: 6. Okt 2005
Ort: Niederlande
215 Beiträge
 
Delphi 7 Enterprise
 
#1

Listview Columns einblenden, ausblenden?

  Alt 16. Nov 2005, 14:45
Hallo Leute,

Ich moechte den User die Gelegenheit geben die Spalten(Columns) einer Listview(vsReport) einblenden oder ausblenden zu lassen ueber Checkboxes.
Die Spalten(7 Stueck, 0 bis 6) existieren bereits mit der Caption aber die Breite steht auf 0;
Wenn ich jetzt eine Checkbox auf checked := true setze wird alles richtig angezeigt, sobald ich eine demarkiere werden die SubItems eine Spalte zu viel nach hinten geschoben.
Der code ist vielleicht nicht optimal aber bis jetzt klapt es.
Delphi-Quellcode:
listitem := listview1.Items.add;
listitem.Caption := IntToStr(Succ(i));

if Date.Checked = true then
begin
Listview1.Columns.Items[1].Caption := 'Date:';
Listview1.Column[1].Width := 70;
z.Values['Added'] := Parse(' ', z.Values['Added'], 1);
listitem.SubItems.add(z.Values['Added']);
end
else
Listview1.Column[1].Width := 0;

if Category.Checked = true then
begin
Listview1.Columns.Items[2].Caption := 'Category:';
Listview1.Column[2].Width := 100;
listitem.SubItems.add(z.Values['Category']);
end
else
Listview1.Column[2].Width := 0;

if Release.Checked = true then
begin
Listview1.Columns.Items[3].Caption := 'Release:';
Listview1.Column[3].Width := 300;
listitem.SubItems.add(SimpleRSS.Items.Items[i].Title);
end
else
Listview1.Column[3].Width := 0;
....
.....
Listview1.Invalidate;
Weiss einer vielleicht die Loesung?
Besten Dank im voraus.

Lucius..
  Mit Zitat antworten Zitat