Entwickler-Ecke
Dateizugriff - Shelltreeview auf "next" (Bild,Datei) wechseln
Lui - Mi 25.06.03 12:55
Titel: Shelltreeview auf "next" (Bild,Datei) wechseln
Hallo,
ich habe einen shelltreeview der einen bestimmten Ordner anzeigt in dem sich Bilddateien befinden. Es sind 10 Bilder in diesem Ordner. Man kann diese auswählen und OnBtnClick dadurch das Hintergrundbild des Desktops ändern. Funktioniert auch alles wunderbar, aber das ist mir noch nicht genug.
Ich habe eine Timer Komponente hinzugefügt und will mit dieser das in frei wählbaren Intervalen die Liste mit den Bildern wechselt, also das z.B. alle 10 sek. das nächste Bild aus der Liste als Hintergrund gesetzt wird.
Nur mit welchem Codeschnippsel stelle ich das an? Es soll also immer der nächste Eintrag ausgewählt werden (beim letzten wieder der erste). Aber wie stell ich das am besten an? Welche Methoden gibts von Shelltreeview um eine Zeile/ eine Datei weiter zu gehen, diese zu markieren,...wie ich dann das bgpic ändere weiß ich, halt nur nicht wie ich eine Poistion in dem treeview weiter springen kann.
Über Antwort wäre ich sehr dankbar.
MfG
Lui
Unzi - Do 26.06.03 20:30
Also, mit dem ShellTreeView konnte ich nur Ordner anzeigen, allerdings sagst du, du zeigst Bilddateien an. Wie sehe ich denn eigentlich dann die zehn Bilder? Und zweitens: Wenn du mir sagst, wie man aus einem ShellTreeView den aktuell markierten Ordner bekommen kann, hätte ich eine Lösung parat.
Lui - Fr 27.06.03 13:33
Titel: Shelltreview mit select
Hallo,
es gibt eine Einstellung die nicht nur den Ordner anzeigt sondern auch deren Inhalt (hab den Namen jetzt leider nicht im Kopf). Die Bilder sind wie im Explorer auch als Dateien zu sehen.
Mit Shelltreeview.selected kann man mit dem markierten Satz arbeiten.
Aber wie kann ich auf das nächste Wechseln, bzw. am Ende wieder auf das erste?
Mfg
Lui
Unzi - Fr 27.06.03 16:15
Also, ich hätte eine Lösung, die zwar nicht den Cursor im ShellTreeView setzt, das kann man aber dadurch ausgleichen, dass man ein Label erstellt und den aktuellen Dateinamen draufschreibt. Mein Code orientiert sich auch daran:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61:
| var Form1: TForm1;sr:TSearchRec;state:byte;
procedure TForm1.FormCreate(Sender: TObject); begin state:=0; end;
procedure SetBackGround(name:string); begin end;
function TForm1.GetNextFile:string; var res:byte;path:string; begin result:=''; if state=0 then begin path:=shelltreeview1.SelectedFolder.PathName; if path[length(path)]<>'\' then path:=path+'\'; res:=findfirst(path+'*.*',faAnyFile,sr); state:=1; if res=0 then begin result:=sr.Name; exit; end; end; res:=findnext(sr); if res=0 then result:=sr.Name; end;
procedure TForm1.Timer1Timer(Sender: TObject); begin if getnextfile<>'' then begin if sr.Attr<>faDirectory then begin label1.Caption:=sr.Name; SetBackground(sr.Name); end; end else begin findclose(sr); state:=0; end; end;
procedure TForm1.Button1Click(Sender: TObject); begin findclose(sr); state:=0; timer1.Enabled:=false; end;
procedure TForm1.Button2Click(Sender: TObject); begin timer1.Enabled:=true; end; |
Gruß!
Unzi
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!