Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Название темы: создание форм в Delphi
Показать сообщение отдельно

Аватара для DillerInc

Обратный инженер


Сообщения: 644
Благодарности: 47

Профиль | Отправить PM | Цитировать


Surround
Вот код на Delphi только без использования VCL:
Код: Выделить весь код
var
 Instance : Cardinal;
 Handle : HWND;
 hbtnOpen : HWND;
 hbtnRun : HWND;
 hStatic : HWND;
 hMemo : HWND;
 hLabel : HWND;
 WindowClass : TWndClass;
begin 
 Instance := GetModuleHandle(nil);

 { Заполняем структуру WindowClass класса TWndClass }

 WindowClass.style := CS_HREDRAW or CS_VREDRAW;
 WindowClass.lpfnWndProc := @WindowProc;
 WindowClass.hInstance := Instance;
 WindowClass.hIcon := LoadIcon(0, IDI_APPLICATION);
 WindowClass.hCursor := LoadCursor(0, IDC_ARROW);
 WindowClass.hbrBackground := COLOR_BACKGROUND;
 WindowClass.lpszClassName := 'Example';
// Регистрируем класс окна
 RegisterClass(WindowClass);
// Создаём окно
 Handle := CreateWindow('Example', 'Пример создания окна без VCL',
                          WS_CAPTION or WS_SYSMENU or WS_MINIMIZEBOX,
                          350, 300, 400, 250, 0, 0, Instance, NIL);
// Показываем окно
 ShowWindow(Handle, SW_SHOW);
 UpdateWindow(Handle);
// Создаём кнопку
 hbtnOpen := CreateWindow('BUTTON', 'Open',
                           WS_VISIBLE or WS_CHILD or BS_DEFPUSHBUTTON,
                           15, 185, 60, 25, Handle, 0, 0, NIL);
// Ещё кнопка
 hbtnRun := CreateWindow('BUTTON', 'Run',
                     WS_VISIBLE or WS_CHILD or BS_PUSHBUTTON,
                     100, 185, 60, 25, Handle, 0, 0, NIL);

// Типа дельфийский Memo
 hMemo := CreateWindowEx(WS_EX_OVERLAPPEDWINDOW, 'EDIT', '',
     WS_VISIBLE or WS_CHILD or WS_VSCROLL or ES_LEFT or
     ES_MULTILINE or ES_READONLY or ES_AUTOVSCROLL,
                           10, 45, 350, 130, Handle, 0, 0, NIL);
// Типа дельфийский label
 hLabel := CreateWindow('STATIC', 'Это компонент Label',
                      WS_VISIBLE or WS_CHILD or SS_RIGHT or SS_SIMPLE,
                      240, 200, 150, 20, Handle, 0, 0, nil);
end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 12:41, 07-07-2006 | #5

Название темы: создание форм в Delphi