Einzelnen Beitrag anzeigen

CCRDude
(Gast)

n/a Beiträge
 
#10

Re: Tile-Modus und Gruppierung von List-View-Items (WinXP)

  Alt 29. Jun 2007, 14:13
Ist zwar schon ein etwas älterer Beitrag, aber da ich heute gerade nach längerer Suche drüber gestolpert bin und hier die Screenshots inzwischen fehlen, und mir das perfekt für das erste Rumspielen mit einem class helper erschien, hab ich mal eben zwei davon zusammengeschustert und mitsamt Screenshots hier angehängt.

Funktionabel ab BDS X (hier Version einsetzen, ab der es class helper gibt... 2005 oder 2006?), alternativ stehen zumindest 8 Wrapper-Funktionen für dieselben Aktionen zur Verfügung. Die CommCtrl_Fragment.pas ist ebenfalls noch nötig, wollte nicht so frech sein und die als meine Arbeit ausgeben, ich habs ja bloß nochmal in Schönschrift abgeschrieben

Beispiel für die Anwendung:

Delphi-Quellcode:
procedure TForm1.AddSomeGroupedThings;
begin
   ListView1.AddGroup('Eigene Dateien', 1); // neu
   ListView1.AddGroup('Downloads', 2);
   ListView1.ViewStyleEx := vsTile; // neu
   with ListView1.Items.Add do begin
      Caption := 'Hallo Welt.txt';
      GroupId := 1; // neu
      SetMinimumSubItemCount(2, '?'); // neu
      SubItems[0] := '11 B';
      SubItems[1] := IntToStr(GroupId);
      SetTileViewColumns(2, [1]); // neu
   end;
   with ListView1.Items.Add do begin
      Caption := 'snlListView.pas';
      GroupId := 1;
      SetMinimumSubItemCount(2, '?');
      SubItems[0] := '10 KB';
      SubItems[1] := IntToStr(GroupId);
      SetTileViewColumns(2, [1]);
   end;
   with ListView1.Items.Add do begin
      Caption := 'Screenshot.png';
      GroupId := 2;
      SetMinimumSubItemCount(2, '?');
      SubItems[0] := '183 KB';
      SubItems[1] := IntToStr(GroupId);
      SetTileViewColumns(2, [1]);
   end;

   ListView1.TileViewLines := 1; // neu
   ListView1.GroupViewEnabled := true; // neu
end;
Miniaturansicht angehängter Grafiken
listviewtiledemo1_101.png   listviewgroupdemo1_154.png  
Angehängte Dateien
Dateityp: pas snllistview_582.pas (9,8 KB, 112x aufgerufen)
  Mit Zitat antworten Zitat