Вниз
Скачать: CL | DM;

Открытие диалога из формы наследника   Найти похожие ветки 

← →
DiamondeX ©   (2010-06-18 00:09) [0]

Есть такая форма:
unit MainBaseFU;
...
type
 TMainBaseF = class(TBasicF)
   LoadImgBtn: TButton;
   LoadPictureDlg: TOpenPictureDialog;
   ...
 end;

В ней у кнопки LoadImgBtn нет обработчика нажатия на кнопку, но он есть в форме-наследнице, что показано ниже:
unit CaptureLrFU;
...
type
 TCaptureLrF = class(TMainBaseF)
   procedure LoadImgBtnClick(Sender: TObject); override;
   ...
 end;

implementation

procedure TCaptureLrF.LoadImgBtnClick(Sender: TObject);
begin
 ShowMessage("before open picture");
 if not LoadPictureDlg.Execute then Exit;
 ShowMessage("after open picture");
end;



По непонятной причине открытие окна диалога не происходит, и после сообщения "before open picture" сразу появляется "after open picture". Кто знает в чем тут дело?


← →
DiamondeX ©   (2010-06-18 00:54) [1]

Кстати, директива override тут никакой роли не играет. До ее добавления тоже диалог не открывался.


← →
Германн ©   (2010-06-18 01:36) [2]

truth is out there


← →
DiamondeX ©   (2010-06-18 02:15) [3]

Ошибку нашел: причина вовсе не в наследовании, как оказалось. Просто в свойство FileName диалога до вызова LoadImgBtnClick было занесено некорректное имя файла (фактически это оказалось именем папки, так как заканчивалось слэшем), что почему-то не вызывало возмущения у контрола-диалога. Очевидно именно по этой причине диалог совсем не открывался.

Тему, думаю, можно закрыть.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.006 c
15-1275535977
Юрий Зотов
2010-06-03 07:32
2010.09.12
И снова смех сквозь слезы...


15-1274256143
12
2010-05-19 12:02
2010.09.12
Помогите пропатчить dll. Обход ошибочного кода. Не взлом!


2-1276727283
TechnoDreamer
2010-06-17 02:28
2010.09.12
Zoom в TWebBrowser (обработка мыши)


2-1276392661
DROWSY
2010-06-13 05:31
2010.09.12
Если TIBDataSet - набор из нескольких связанных таблиц...


2-1276338216
forNeXt-13
2010-06-12 14:23
2010.09.12
Как сделать ValueListEditor в возможностью выбора




   Наверх