![]() |
Cursor im Open-Dialog positionieren
Ich suche nach einer Möglichkeit, in einem Open-Dialog den Cursor auf eine bestimmte Datei zu positionieren (der Name steht beim Start in 'Filename').
Hat jemand eine Idee? Cheers striderx |
AW: Cursor im Open-Dialog positionieren
Warum, wenn der Dateiname schon ausgewählt ist? Default-Schaltfläche ist doch "Öffnen" so dass ein Druck auf Return reichen sollte, die Datei auszuwählen und den Dialog zu schließen.
Aber jetzt mal so grob die Vorgehenseise. Handle vom Dialog ermitteln. Der Listview ist ein Child vom Dialog. Handle vom Listview ermitteln. Mit einer Nachricht die Items durchgehen, die richtigen finden und mit einer Nachricht selektieren. |
AW: Cursor im Open-Dialog positionieren
>>Warum, wenn der Dateiname schon ausgewählt ist<<
Es geht darum, in einem Verzeichnis mit vielen Dateien die Auswahl in der Nähe des eingetragenen Dateinamens zu erleichtern. Es sind nacheinander mehrere Dateien auszuwählen, deren Namen sich zumeist nur wenig unterscheiden. |
AW: Cursor im Open-Dialog positionieren
Klingt so, als würde das Verzeichnis festgelegt sein.
Wäre es dann nicht einfacher, die Dateien in einer Listbox oder Checklistbox darzustellen? Damit umgehst du das Ansteuern des OpenDialogs und hast alles selbst in der Hand. |
AW: Cursor im Open-Dialog positionieren
Ich hätte mein Szenario vieleicht etwas besser beschreiben sollen: Es geht darum, Bild-Dateien auszuwählen, die als Thumbnail angezeigt werden. Wenn die erste ausgewählt ist, geht es darum, weitere 'in der Nähe' auszuwählen. Der Dateiname in der Filename-Property ist jeweils derjenige der zuletzt ausgewählten Datei.
@Jasocul: Dafür eine Verzeichnis-Darstellung mit Thumbnails selbst zu programmieren ist für mich nicht zielführend. Fremd-Komponenten setze ich grundsätzlich nicht ein. @Luckie: Theoretisch hatte ich mir das schon so ungefähr vorgestellt, mir fehlt jedoch die praktische Umsetzung. Hast Du ggf. ein Code-Beispiel - insbesondere für den Listen-Teil? |
AW: Cursor im Open-Dialog positionieren
Kann man nicht im Open-Dialog direkt mehrere Dateien auswählen? Mit Strg+Click auf die Dateien?
Ich meine ausser Filename hat er doch noch eine Property Filelist, oder so ähnlich (bin gerade nicht an einem Delphi-Rechner). |
AW: Cursor im Open-Dialog positionieren
Zitat:
Gruß K-H |
AW: Cursor im Open-Dialog positionieren
@Jumpy
In dem Programm geht es u. a. darum, verschiedene Bilder zu kombinieren (immer je zwei). Ob das ein ansprechnendes Ergebnis bringt, muss halt immer wieder ausprobiert werden. Ein Multi-Select bringt hier nichts. @p80286 Die Dateien sind nach Namen sortiert, aber darum geht es nicht. Schlußendlich geht es um genau das, was Luckie theoretisch beschrieben hat. Ich brauche halt Hinweise für die praktische Umsetzung. |
AW: Cursor im Open-Dialog positionieren
Opendialog hat eine Eventmethode, wo man sich rein hängen kann.
Am Besten auch den "neueren" TFileOpenDialog benutzen, anstatt dem alten TOpenDialog. in FileOpenDialog.OnExecute kannst du über FileOpenDialog.Dialog Zugriff bekommen, siehe TCustomFileDialog.Execute // DefaultFolder Der TOpenDialog wird in neueren Windowsen intern auf die neue API umgeverbogen, aber dem Entwickler wird jeglicher vernünftige Zugriff auf den Dialog verwehrt, durch eine echt grauenhafte Implementation. Das Event nutzt Delphi selber aus, um z.B. den "Bug" zu beheben, dass Windows seit einer Weile den DefaultFolder/InitialDir einfach ignoriert, bzw. denkt da automatisch etwas zu auszuwählen, wo es denkt der Endnutzer würde sich freuen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:53 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