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

Вниз

Регистрация своего класса   Найти похожие ветки 

 
Atrem   (2002-04-26 23:58) [0]

Привот, вот решил серьезно взяться за изучение WinApi
Пытаюсь вот по книжке зарегистрировать свой класс и создать окно моего класса, но что-то не выходит,в чем ошибка?
Код таков :

....
private
function My(h:hwnd;msg:cardinal;w,l:Longint):Integer;stdcall;
....
function TForm1.My(h:hwnd;msg:cardinal;w,l:Longint):Integer;
begin
DefWindowProc(h,msg,w,l);
end;
{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var t:TWndClassEx;
h:hwnd;
begin
h:=0;
with t do
begin
style:=CS_HREDRAW or CS_VREDRAW;
lpfnWndProc:=@TForm1.my;
cbClsExtra:=0;
cbWndExtra:=0;
hInstance:=HInstance;
hIcon:=LoadIcon(0,IDI_APPLICATION);
hCursor:=LoadCursor(0,IDC_ARROW);
hbrBackground:=GetStockObject(WHITE_BRUSH);
lpszMenuName:=nil;
lpszClassName:="E";
hIconSm:=LoadIcon(0,IDI_APPLICATION);
cbSize:=sizeof(t);
end;
w:=Windows.RegisterClassEx(t);
h:= CreateWindow("E","окно моего класса",WS_OVERLAPPED,0,0,300,300,0,0,HInstance,nil);
ShowWindow(h,SW_MAXIMIZE);
UpdateWindow(h);
Ошибка не появляется, но и окна нет.


 
Almaz ©   (2002-04-27 00:29) [1]

Первое, что бросается в глаза
1. Метод класса не может выполнять роль оконной функции.
2. Перед тем как заполнять структуру t обнулите ее : FillChar(t, SizeOf(t), 0);
3. Ну и наконец вы кое-что забыли
function TForm1.My(h:hwnd;msg:cardinal;w,l:Longint):Integer;
begin
Result := DefWindowProc(h,msg,w,l);
end;

Удачи.



 
Atrem   (2002-04-27 01:03) [2]

2 Almaz
Спасибо,помогло



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
14-77610
Демон
2002-05-21 17:28
2002.06.24
Про Исходный код


14-77582
tormoZZZ
2002-05-21 13:06
2002.06.24
Stream...


7-77650
Win32
2002-03-15 17:25
2002.06.24
Floppy-buzzing


1-77396
Воронкин
2002-06-10 14:53
2002.06.24
[D6,WinAPI] NetUserEnum


1-77425
Dimitriev V G
2002-06-10 16:53
2002.06.24
Оптимизация программы на Дельфи, утилиты просмотра памяти, тактов