![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Выбор директории [D4, D5, D6, Win95/98, WinME, NT4, Win2k, WinXP]
baataar © (2002-07-29 19:38:00)function BrowseDialog(const Title: string; const Flag: integer): string;
var
lpItemID : PItemIDList;
BrowseInfo : TBrowseInfo;
DisplayName : array[0..MAX_PATH] of char;
TempPath : array[0..MAX_PATH] of char;
begin
Result:="";
FillChar(BrowseInfo, sizeof(TBrowseInfo), #0);
with BrowseInfo do begin
hwndOwner := Application.Handle;
pszDisplayName := @DisplayName;
lpszTitle := PChar(Title);
ulFlags := Flag;
end;
lpItemID := SHBrowseForFolder(BrowseInfo);
if lpItemId <> nil then begin
SHGetPathFromIDList(lpItemID, TempPath);
Result := IncludeTrailingBackslash(TempPath);
GlobalFreePtr(lpItemID);
end;
end;
Утянул где-то функцию, но как мне сделать так чтоб можно было задавать директорию для выбора.
Допустим юзер один раз выбрал, и второй раз выбирая подставлялась его директория
star (2002-07-31 21:33:00) [1]Шпасибо !!!
Eugene Lachinov (2002-07-31 07:52:00) [2]http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988622138&n=15
star (2002-07-31 00:30:00) [3]Чем больше я пользуюсь функцией SelectDirectory, тем меньше она мне нравится. Как-то коряво она работает - после указания директории приложение выкидывает под низ всех окон и приходится специально давать Application.BrigToFront. Кроме того, если задать начальную папку, она не дает подняться выше по дереву каталогов - дерево начинается именно с этой начальной папки. Кроме того, она не позволяет создать папку прямо во время выбора. В общем это и моя головная боль.
Хотел сам написать компонент - да лень матушка ...
Dmitry Toropov (2002-07-30 15:11:00) [4]2battar
см. SelectDirectory в Help"e, там два варианта этой функции, в одном из них можно указать начальную директорию.
IMHO, SelectDirectory - инкапсулирует системную функицию SHBrowseForFolder
Geser (2002-07-30 00:40:00) [5]8-0
%-)
Вот он, современный подход к программированию!
То battar : Найдите себе компонент! Наверняка есть.
battar (2002-07-29 23:17:00) [6]это я понял, но куда ее подставить?
В какое свойство?
Jeer (2002-07-29 22:32:00) [7]Кто-ж кроме тебя ее где-то запомнит. Реестр или ini - на выбор.