Как с помощью API поместить Label на Form?

var
hLabel : HWND ;
...
hLabel := CreateWindow ( 'STATIC', 'test', WS_CHILD or WS_VISIBLE, 0, 0, 200, 40, hWnd, NULL, hInstance, NULL );

Автор ответа: Baa

Примечание: Vit

Скорее всего последний параметр не "NULL", а "Nil" (NULL в паскале - варианта для обозначения пустого поля в базе данных)
Взято с Vingrad.ru http://forum.vingrad.ru

program Project1;

{©Drkb v.3(2007): www.drkb.ru}

uses

Windows,

Messages;

const

myClassName= 'myWindow';

var

handleWnd, Label1 : THandle;

WndClass: TWndClass;

Msg: TMsg;

function WindowProc(Window: HWnd; AMessage, WParam,

LParam: Longint): Longint; stdcall;

begin

WindowProc:= DefWindowProc(Window, AMessage, WParam, LParam);

case AMessage of

{WM_COMMAND: if lParam = Button1 then

MessageBox( 0, 'Вы нажали кнопку!', 'Информация',

MB_OK or MB_ICONINFORMATION); }


WM_DESTROY: Halt;

end;

end;

begin

with WndClass do

begin

hInstance := hInstance;

lpszClassName:= myClassName;

style := cs_hRedraw or cs_vRedraw;

hbrBackground:= color_btnface +1;

lpfnWndProc := @WindowProc;

hCursor := LoadCursor(0, idc_Arrow);

hIcon := LoadIcon(0, IDI_EXCLAMATION);

lpszMenuName := NIL;

cbWndExtra := 0;

cbClsExtra := 0;

end;

RegisterClass( WndClass );

handleWnd:= CreateWindow(myClassName, 'Hажми кнопку', ws_OverlappedWindow,

400, 300, 200, 100, 0, 0, hInstance , NIL);

if handleWnd = 0 then

begin

MessageBox( 0, 'Error', NIL, MB_OK );

Exit;

end;

Label1:= CreateWindow( 'Label', 'Text',

WS_VISIBLE or WS_CHILD or WM_SETTEXT,

20, 10, 60, 23, handleWnd, 0, hInstance, nil);

ShowWindow(handleWnd, SW_SHOW);

UpdateWindow(handleWnd);

while GetMessage(Msg, handleWnd, 0, 0) do

begin

TranslateMessage(Msg) ;

DispatchMessage(Msg) ;

end;

end.

Автор ответа: alex-co
Взято с Vingrad.ru http://forum.vingrad.ru

Отправить комментарий

Проверка
Антиспам проверка
Image CAPTCHA
...