![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
||||
|
||||
|
Есть OpenDialog. Для него нужно выбрать папку и установить её как InitialDir. C функцией SelectDirectory разобраться не могу. Может можно по-другому?
Если в процессе работы каталог изменить, то при повторном вызове диалога будет InitialDir или новый каталог? |
|
#2
|
||||
|
||||
|
Код:
uses
FileCtrl,
...
var
dir: String;
begin
if SelectDirectory('А ну ка...', 'd:\', dir) then
end; |
|
#3
|
||||
|
||||
|
Что за параметры 'а ну ка...' и dir? Кстати когда я описал переменную dir дельфи руганулся, выдав какое-то окошко. Как проверить выбрал пользователь каталог или нет (аналогично свойству openDialog.execute).
|
|
#4
|
||||
|
||||
|
форма, на ней кнопка:
Код:
unit Unit1;
interface
uses
FileCtrl,
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
dir: String;
begin
if SelectDirectory('Выберите папку, которая будет удалена:', '', dir) then
ShowMessage(dir);
end;
end.![]() когда пользователь нажмет Ок выведится папка, которую он выбрал, если Отмена ничего не выведится. если в SelectDirectory вторым параметром указать "c:\WINDOWS\", то будет вообще интересно) вообще в файле справки есть описание этой функции. |
|
#5
|
||||
|
||||
|
Цитата:
А как изменить положение окна. Разместить его в центре экрана? |
|
#6
|
||||
|
||||
|
вообще-то весь код пишется на английском)
на стандартной FileCtrl.SelectDirectory никак не поменять положение окна. но можно самому реализовать такой же диалог через SHBrowseForFolder с новым стилем BIF_NEWDIALOGSTYLE и BIF_USENEWUI. там уже будет больше возможностей. |