Форум: "Начинающим";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
ВнизКак вызвать диалог выбора папки??? Найти похожие ветки
← →
savyhinst © (2008-04-11 14:17) [0]Здраствуйте.
Подскажите пожалуйста, как вызвать диалог выбора папки???
Спасибо за внимание.
← →
Palladin © (2008-04-11 14:17) [1]SelectDirectory
← →
Anatoly Podgoretsky © (2008-04-11 14:21) [2]> savyhinst (11.04.2008 14:17:00) [0]
SelectDirectory
← →
Семеныч (2008-04-11 14:31) [3]И я тоже хочу!
> savyhinst © (11.04.08 14:17)
SelectDirecory
← →
{RASkov} © (2008-04-11 14:35) [4]> [3] Семеныч (11.04.08 14:31)
две-то есть(uses FileCtrl), а третья откуда? ;)
← →
clickmaker © (2008-04-11 14:36) [5]это не спортивно
SHBrowseForFolder )
← →
Johnmen © (2008-04-11 14:37) [6]
> Семеныч (11.04.08 14:31) [3]
> И я тоже хочу!
Хотел, но не смог :))
← →
Anatoly Podgoretsky © (2008-04-11 14:53) [7]> Семеныч (11.04.2008 14:31:03) [3]
Тебе не досталось, мы все раздали.
← →
Семеныч (2008-04-11 15:10) [8]Вот так всегда. Злые вы, уйду я от вас... к Коле Быкову...
← →
webpauk © (2008-04-11 15:13) [9]unit BrowseDialog;
interface
uses
Windows, Messages, SysUtils, Classes, Controls, ShlObj, Forms;
type
TBrowseDialog = class(TComponent)
private
fFlagOnlyDir: Boolean;
fFlagEditBox: Boolean;
fFlagStatusText: Boolean;
fText: String;
fDir: String;
public
function Execute: Boolean;
published
property OnlyDir: Boolean read fFlagOnlyDir write fFlagOnlyDir;
property EditBox: Boolean read fFlagEditBox write fFlagEditBox;
property StatusText: Boolean read fFlagStatusText write fFlagStatusText;
property Title: String read fText write fText;
property Dir: String read fDir;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents("Dialogs", [TBrowseDialog]);
end;
function TBrowseDialog.Execute: Boolean;
var
lpItemID: PItemIDList;
path: array[0..Max_path] of Char;
BrowseInfo: TBrowseInfo;
begin
Result:=False;
FillChar(BrowseInfo, SizeOf(TBrowseInfo), #0);
SHGetSpecialFolderLocation(TApplication(Owner).Handle, csidl_desktop, BrowseInfo.pidlRoot);
with BrowseInfo do
begin
hwndOwner:=TApplication(Owner).Handle;
lpszTitle:=PChar(fText);
if fFlagOnlyDir then ulFlags:=ulFlags+BIF_RETURNONLYFSDIRS;
if fFlagEditBox then ulFlags:=ulFlags+BIF_EDITBOX;
if fFlagStatusText then ulFlags:=ulFlags+BIF_STATUSTEXT;
end;
lpItemID := SHBrowseForFolder(BrowseInfo);
if lpItemId<>nil then
begin
SHGetPathFromIDList(lpItemID, Path);
fDir:=path;
Result:=True;
GlobalFreePtr(lpItemID);
end;
end;
end.
← →
Германн © (2008-04-11 17:18) [10]
> Anatoly Podgoretsky © (11.04.08 14:53) [7]
>
> > Семеныч (11.04.2008 14:31:03) [3]
>
> Тебе не досталось, мы все раздали.
>
Врешь. Не всё. В загашнике ещё TDirectoryListBox валяется.
← →
clickmaker © (2008-04-11 17:23) [11]а также ShellTreeView и DirectoryOutline
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.009 c