AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Items Horizontal nebeneinander anzeigen

Ein Thema von PatrickB · begonnen am 28. Jun 2008 · letzter Beitrag vom 8. Jul 2008
Antwort Antwort
Seite 1 von 2  1 2      
PatrickB

Registriert seit: 13. Dez 2007
61 Beiträge
 
#1

Items Horizontal nebeneinander anzeigen

  Alt 28. Jun 2008, 13:24
Hi,

ich versuche gerade die Dateien eines Ordners anzeigen zu lassen.
Nun will ich das aber so machen, dass die Elemente horizontal angezeigt werden, so wie wenn man die Dateien bzw. Ordner unter Windows bei Ansicht als "Liste" anzeigen lässt.

Mit einer Listbox werden die ja nur untereinander angezeigt. Und mit dem Listview weiß ich nicht wie das funktionieren könnte wenns denn funktioniert.

Hoffe ihr versteht meine Frage,

Danke schonmal, PatrickB
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Items Horizontal nebeneinander anzeigen

  Alt 28. Jun 2008, 13:28
Schau dir mal ListView.ViewStyle an.
Markus Kinzler
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: Items Horizontal nebeneinander anzeigen

  Alt 28. Jun 2008, 13:30
Hallo Patrick,

die ListView hat eine Property ViewStyle. Die Werte vsIcon und vsSmallIcon liefern die von dir gewünschte Ordnung.

Kennst du die Delphi Beipiel-Komponente ShellListView?

Grüße vom marabu
  Mit Zitat antworten Zitat
dominikkv

Registriert seit: 30. Sep 2006
Ort: Gundelfingen
1.109 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Items Horizontal nebeneinander anzeigen

  Alt 28. Jun 2008, 13:34
Zitat von PatrickB:
Nun will ich das aber so machen, dass die Elemente horizontal angezeigt werden, so wie wenn man die Dateien bzw. Ordner unter Windows bei Ansicht als "Liste" anzeigen lässt.
Als Ansicht = "Liste" werden die Dateien im Explorer vertikal (Also untereinander) angezeigt, nicht horizontal.
Wenn du ein ListView auf vsReport stellst hast du diesen Effekt.

Ansomsten schau dir mal diverse ShellTreeViews an, die sind extra dazu konzepiert.
Dominik
Wer anderen eine Grube gräbt, hat ein Gruben-Grab-Gerät!
  Mit Zitat antworten Zitat
PatrickB

Registriert seit: 13. Dez 2007
61 Beiträge
 
#5

Re: Items Horizontal nebeneinander anzeigen

  Alt 1. Jul 2008, 14:51
Ok, dann müsste das ja das Richtige sein.
Aber irgendwie komme ich mit diesem ListView nicht zurecht und die Hilfe funktioniert nicht mehr. Da kommt am Start ein Fehler, dass die Datei nicht gefunden wurde für die Hilfe, deswegen frag ich jetzt hier.

Wie funktioniert das ListView genau?

Also es gibt ja dazu noch das ListItem und Subitem, aber die Subitems bekomm ich z.B. garnicht angezeigt und wenn ich mehrere ListItems haben will, müsst ich die ja alle oben deklarieren oder wie?

Hier mal ein Ausschnitt:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var srec: TSearchRec;
    li: TListItem;
begin
  //--------Dateien einlesen
 if Findfirst('Verzeichnis+'*.mp3', faAnyFile, srec) = 0 then
begin
REPEAT
li := ListView1.Items.Insert(0);
li.Caption := srec;
UNTIL FindNext(srec) <> 0;
end;
findclose(srec);
//------------------------
end;
Also das Programm geht in ein Verzeichnis und soll von dort alle Lieder mit der Endung .mp3 auflisten.
Zwischen REPEAT und UNTIL sollen dann die Ergebnisse in das ListView eingetragen werden.
Nur wenn ich das jetzt so mache, falls das überhaupt so richtig ist, gibt er mir natürlich den Fehler, dass li.Caption ein String und kein TSearchRect sein darf.

Danke schonmal,
Gruß PatrickB
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#6

Re: Items Horizontal nebeneinander anzeigen

  Alt 1. Jul 2008, 15:04
Wenn die Affenhitze in Hamburg mir nicht den Kopf total vernebelt hat, dann müsste zumindest dieser Teil verändert werden:
Delphi-Quellcode:
li := ListView1.Items.Insert(0);
   li.Caption := srec;
Dein Ziel ist doch, den Dateinamen in das Listview zu bringen. Der Dateiname steht in srec.Name, einen Eintrag in das Listview erzeugt man mit ...items.add(). Also

ListView1.Items.Add(srec.name)
Ralph
  Mit Zitat antworten Zitat
PatrickB

Registriert seit: 13. Dez 2007
61 Beiträge
 
#7

Re: Items Horizontal nebeneinander anzeigen

  Alt 1. Jul 2008, 15:11
ListView1.Items.Add(); erwartet keinen Parameter, aber wenn ich anstatt srec, srec.name mache gehts.
Jetzt wirds mir angezeigt mit Style = List.
Aber die Einträge sind jetzt so weit auseinander, kann man das einstellen damit die näher beisammen sind?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Items Horizontal nebeneinander anzeigen

  Alt 1. Jul 2008, 15:18
Dann hast Du eine Datei oder einen Ordner mit einem sehr langen Namen darin (siehe Anhang).
Miniaturansicht angehängter Grafiken
listview2_133.jpg   listview_121.jpg  
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
PatrickB

Registriert seit: 13. Dez 2007
61 Beiträge
 
#9

Re: Items Horizontal nebeneinander anzeigen

  Alt 1. Jul 2008, 15:21
Ok, danke. Hab den Ordner gefunden.
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#10

Re: Items Horizontal nebeneinander anzeigen

  Alt 1. Jul 2008, 15:38
Uhhhhh, jetzt habe ich mich geoutet, noch nie mit Listview gearbeitet zu haben
Ralph
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz