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

Вниз

Процедура обработки сообщений в форме созданной динами-   Найти похожие ветки 

 
R   (2003-10-06 02:29) [0]

чески.
Вопрос как сделать процедуру обработки ну например сообщения
WM_SETTINGCHANGE в форме созданной динамически. Сразу оговорюсь
прошу помочь конкретным примером. Как делать это статически проблемы нет. Пример:
-----------------
private
procedure WMSETTINGCHANGE(var Message: TWMSETTINGCHANGE); message WM_SETTINGCHANGE;
-----------------

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.WMSETTINGCHANGE(var Message: TWMSETTINGCHANGE);
begin
Beep
end;

а вот в динамически созданной форме не знаю как?


 
Emperor   (2003-10-06 02:59) [1]

Опиши свой класс, наследуй его от TForm (лучше от TCustomForm)
в нем опиши процедуру обработки сообщения а потом создавай его экземпляры...

и вообще я не понял в чем промблема или ни в чем?... :-|


 
R   (2003-10-06 03:21) [2]

To Emperor (06.10.03 02:59) [1]
Проблема описана выше. Можно пример


 
Emperor   (2003-10-06 03:27) [3]

To R

Давай пример...
emperor@tut.by


 
R   (2003-10-06 03:58) [4]

По совету сделал вроде получилось, не могу понять одного
почему идет ошибка см. ниже:

//создал класс с процедурой обр.сообщения
type
TForm2 = class(TCustomForm)
private
procedure WMSETTINGCHANGE1(var Message: TWMMOUSEWHEEL); message WM_MOUSEWHEEL ;//для примера

public

end;

------------------------

//сама процедура для пробы
procedure TForm2.WMSETTINGCHANGE1(var Message: TWMMOUSEWHEEL);
begin
Beep
end;

//Тест

procedure TForm1.Button2Click(Sender: TObject);
var
Form:TForm2;
begin
Form:=TForm2.Create(nil);//если так создавать то идет ошибка
Form:=TForm2.CreateNew(nil);//а так нет
Form.ShowModal;
Form.Free;

end;

С сообщением все нормально работает.


 
Emperor   (2003-10-06 04:26) [5]

Извини это я обшибся ...

надо именно CreateNew()

Create - это если к форме есть дфм файл...то есть когда создаешь не в ран тайме....
там еще ньюансов куча...
Лучше вообще делать форму как обычно делают...
а потом созадвай экземпляры в рантайме скока хочется
тока вместо nil лучше Application

В общем никакой прблемы не оказалось.... был рад помочь

(by Emperor)


 
R   (2003-10-06 05:53) [6]

Emperor Спасибо за помощь.



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

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

Наверх




Память: 0.48 MB
Время: 0.018 c
1-51230
Val
2003-10-03 14:55
2003.10.16
Error while setting a property in Automation object


14-51442
race1
2003-09-28 06:09
2003.10.16
happy tree friends


1-51255
ghost_by
2003-10-03 13:20
2003.10.16
TStringGrid - как запретить редактирование отдельных ячеек?


3-51126
Scorpio3k
2003-09-24 14:05
2003.10.16
Базы Данных - Как не сохранять изменения?


14-51498
Rbc
2003-09-27 22:40
2003.10.16
Странности с CD-Rom