Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Buttons dynamisch erstellen (https://www.delphipraxis.net/14240-buttons-dynamisch-erstellen.html)

synex 5. Jan 2004 13:51


Buttons dynamisch erstellen
 
Hallo Leute!

Ich will ein Programm schreiben, dass für jedes Icon auf dem Desktop einen Button dynamisch erstellt und wenn man diesen Button drückt soll dann das Programm dass zur Verknüpfung gehört gestartet werden soll.
Jetzt habe ich ein paar Probleme:
  • wie kann ich herausfinden wieviele Verknüpfungen (*.lnk) auf dem Desktop sind?
  • wie kann ich x Buttons dynamisch erstellen?
  • wie kann ich das Programm oder was auch immer dahinter steckt einer verknüpfung auslesen und dem jeweiligen Button zuweisen?

vielen Dank schonmal
MfG synex

hitzi 5. Jan 2004 14:01

Re: Buttons dynamisch erstellen
 
Hallo,

es gibt für jeden Benutzer ein Verzeichnis Desktop, wo alle Dateien (nicht nur Verknüpfungen) gespeichert sind. Diese dann noch mit dem Desktop Verzeichnis von All Users mischen und schon hast du alle Dateien vom Desktop.

Wo sich dieser Ordner befindet ist von Betriebssystem zu Betriebssystem anders und könnte auch noch vom User manuell geändert worden sein. Für die Ermittlung dieses Verzeichnisses gibt es eine Systemfunktion, welche mir aber im Moment nicht einfällt.

zu 2. TButton.Create -> F1
zu 3. Einfach die Datei im Destop Ordner ausführen lassen


MfG Hitzi

Christian Seehase 6. Jan 2004 19:07

Re: Buttons dynamisch erstellen
 
Moin Synex,

schau Dir dazu mal die Funktion Hier im Forum suchenSHGetSpecialFolderPath an (PSDK/MSDN) und die Konstanten CSIDL_DESKTOPDIRECTORY CSIDL_COMMONDESKTOPDIRECTORY, um die Verzeichnisse zu lokalisieren.
Ausserdem wirst Du noch das Hier im Forum suchenIShellLink Interface benötigen, um die Daten der Links auszulesen.
Dann solltest Du noch mal nach Hier im Forum suchendynamisch erzeugen

Wichtig:
Künftig bitte eine Thread pro Frage!
Auch wenn die Fragen für Dich zusammengehören ist dies sachlich nicht der Fall.
Danke.

(Das gilt auch für weitere Fragen zu dem was Du auch immer zu den genannten Punkten finden magst)


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:29 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