Главная страница
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.029 c
15-1164947913
Slider007
2006-12-01 07:38
2006.12.24
С днем рождения ! 1 декабря


2-1165232950
Евгений Р.
2006-12-04 14:49
2006.12.24
Сигнал из динамика компьютера


3-1160649279
ceval
2006-10-12 14:34
2006.12.24
Помогите откоректировать запрос


15-1165152476
бамбуча
2006-12-03 16:27
2006.12.24
Слэнг


3-1160635903
leonid
2006-10-12 10:51
2006.12.24
Как создать dbf-файл?