![]() |
Listview in Kaaza oder eMule style
hallo Leute so mal die nächsten Frage zu Listview.
1. Wie bekomme ich eine Progressbar in eine Spalte wie in emule. 2. Wie bekomme ich eine baumstruktur wie in Kazaa. ist das denn Überhaupt möglich? schon mal Danke im Voraus. |
zu 1.)
So geht es mit Buttons. Mit einer Progressbar entsprechend:
Delphi-Quellcode:
zu 2.) Kuck dir mal den Virtual Treeview von Mike Lischke an, der sollte sowas können.
type
TForm1 = class(TForm) ListView1 : TListView; procedure FormCreate(Sender : TObject); procedure ListView1CustomDraw(Sender : TCustomListView; const ARect : TRect; var DefaultDraw : Boolean); private { Private-Deklarationen } procedure MyButtonClick(Sender : TObject); public { Public-Deklarationen } end; var Form1 : TForm1; implementation {$R *.dfm} uses StdCtrls; var MyButton : array of TButton; procedure TForm1.MyButtonClick(Sender : TObject); var s : string; begin s := ListView1.Items[(Sender as TButton).Tag].Caption; ShowMessage(s); end; procedure TForm1.FormCreate(Sender : TObject); var i : Integer; begin setlength(MyButton, Listview1.Items.Count); for i := 0 to ListView1.Items.Count - 1 do begin MyButton[i] := TButton.Create(ListView1); MyButton[i].Parent := Listview1; end; end; procedure TForm1.ListView1CustomDraw(Sender : TCustomListView; const ARect : TRect; var DefaultDraw : Boolean); var i : Integer; begin setlength(MyButton, Listview1.Items.Count); for i := 0 to Listview1.Items.Count - 1 do begin MyButton[i].Parent := Listview1; MyButton[i].Left := Listview1.Left + Listview1.Columns.Items[0].Width; MyButton[i].Top := 18 + i * 14; MyButton[i].Height := 12; MyButton[i].Width := ListView1.Columns[1].Width; MyButton[i].Tag := i; MyButton[i].Caption := ListView1.Items[i].Caption; MyButton[i].OnClick := MyButtonClick; end; end; |
Re: Listview in Kaaza oder eMule style
Hi,
der Code funktioniert bei mir nich so richtig. Habs genau so ausprobiert wie oben. Benutze Delphi 7 Beim Adden eines neuen Items kommt bei mir ne Zugriffsverletzung, nehm an das die deshalb kommt, weil der neue Button nicht initialisiert wurde. Wenn ich das dann aber mache, wird das ListView andauernd wieder neu gezeichnet und es flackert stark. Weiß jemmand wie man das wegbekommt oder wie man es anders machen könnte? Danke im Vorraus |
Re: Listview in Kaaza oder eMule style
Auf meiner Homepage bei den Delphi Demos findet sich ein Demo-Projekt dafür, probier das mal aus. Funktioniert bei mir mit Delphi 6 eigentlich wunderbar.
|
Re: Listview in Kaaza oder eMule style
Danke, geht jetzt, keine Ahnung was ich da vorher falsch gemacht hatte.
|
Re: Listview in Kaaza oder eMule style
Zitat:
|
Re: Listview in Kaaza oder eMule style
@ Luckie - oder sonst jemand der das weiß
Welche Demo meinst Du? Du meinst doch die Seite ![]() Danke Thomas |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz