Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.24;
Скачать: CL | DM;

Вниз

Смена текста одного из контролов Open Dialog Box...   Найти похожие ветки 

 
gdaujk ©   (2006-11-11 18:12) [0]

Доброго времени суток, уважаемые мастера.

Вопрос к Вам следующий: как изменить текст одного из стандартных элементов управления в диалоге открытия/сохранения файла (Open/Save dialog box)? Делаю так:



uses
 Windows, Dialogs;

type
 TExampleDialog = class(TOpenDialog)
 protected
   procedure DoTypeChange; override;
 end;

implementation

uses CommDlg;

const
 ID_EDT1 = 1148;  // ???

procedure TExampleDialog.DoTypeChange;
begin
 SendMessage(Handle,
             CDM_SETCONTROLTEXT,
             WPARAM(ID_EDT1),
             LPARAM(PChar("NewString")));  // текст не меняется

 inherited;
end;

end.



procedure TForm1.Button1Click(Sender: TObject);
var
 ExDlg: TExampleDialog;
begin
 ExDlg := TExampleDialog.Create(Self);
 ExDlg.Filter := "Filter 1|*.fl1|Filter 2|*.fl2";
 ExDlg.FilterIndex := 1;
 ExDlg.Execute;
end;


При смене фильтра ничего не происходит. Подскажите, что я делаю не так.

PS: Меня терзают сомнения по поводу константы ID_EDT1: я взял её из описания диалога в comdlg32.dll. В WinAPI пишут, что edt1 "are constant defined in DLGS.H"; если у вас есть DLGS.H, то будьте добры – подскажите, чему равно edt1.


 
Leonid Troyanovsky ©   (2006-11-12 01:34) [1]


> gdaujk ©   (11.11.06 18:12)  

> const
>  ID_EDT1 = 1148;  // ???


Если имелся ввиду Edit для имени файла, то, видимо, 1152.


> procedure TExampleDialog.DoTypeChange;
> begin
>  SendMessage(Handle,
>              CDM_SETCONTROLTEXT,
>              WPARAM(ID_EDT1),
>              LPARAM(PChar("NewString")));  // текст не
> меняется


Здесь не очень понятен Handle, бо для диалога это должно
быть нечто другое. Ну, скажем GetActiveWindow.

--
Regards, LVT.


 
gdaujk ©   (2006-11-12 15:35) [2]

Точно, там не Handle, а GetParent(Handle) должно быть (см. TOpenDialog.GetFileName).

Leonid Troyanovsky, вы как всегда на высоте :-). Спасибо.



Страницы: 1 вся ветка

Текущий архив: 2006.12.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.042 c
2-1165418826
alex810
2006-12-06 18:27
2006.12.24
Помощь


2-1165305429
Vova_R
2006-12-05 10:57
2006.12.24
Stringgrid


2-1164976291
daser
2006-12-01 15:31
2006.12.24
Как можно "пройтись" в цикле по все цветам (TColor)?


3-1160650236
svt
2006-10-12 14:50
2006.12.24
Подскажите пожайлусата как отображать данные real в бд


15-1164896633
Mozart
2006-11-30 17:23
2006.12.24
Посоветуйте хостинг...