Главная страница
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.47 MB
Время: 0.015 c
14-51511
Zevsus
2003-09-24 13:37
2003.10.16
быстро сменить рабочую группу и ip адрес


8-51356
Charly
2003-06-16 15:48
2003.10.16
TBitMap и буфер обмена


1-51297
Seldon
2003-10-05 22:00
2003.10.16
TPropertyEditor


14-51420
I'm sorry
2003-09-26 19:53
2003.10.16
Это я аттаковал форум


7-51543
Duncan
2003-08-04 09:49
2003.10.16
Можно ли определить количество оперативки?