ВУЗ:
Составители:
Основы компьютерной графики для программистов 60
____________________________________________________________________________________________________________________
http://www.ksu.ru/persons/9134.ru.html
);
Однако для создания стандартных элементов управления можно воспользоваться
упрощенной схемой. Например, для создания кнопки можно указать предопределенный
класс окна “BUTTON”, который нужно передать как строку, оканчивающуюся нулевым
символом, в Object Pascal это тип
PChar.
Для следующего примера добавьте на форму приложения еще одну кнопку. Система
Delphi даст ей имя Button2. Придайте обработчику нажатия на кнопку Button2
следующий вид.
procedure TForm1.Button2Click(Sender: TObject);
var
hw: HWND;
begin
hw:= CreateWindow(
PChar(‘BUTTON’),
PChar(‘MyWindow’),
WS_VISIBLE,
100,30,
70,50,
0,
0,
0,
nil);
//ShowWindow(hw,SW_SHOW);
end;
При указании параметра WS_VISIBLE даже не обязательно вызывать функцию показа
окна на экране. Оно будет автоматически видимым сразу после создания с помощью
функции
CreateWindow. Поэтому вызов функции ShowWindow специально показан
закомментированным как необязательный.
В результате работы данной процедуры вы должны увидеть на экране кнопку, у
которой имеется строка заголовка как у обычного окна с надписью MyWindow. Эта же
надпись будет помещена и на самой кнопке. Кнопка будет существовать как отдельное
окно на рабочем столе Windows.
Замечание. В данной теме не приводится исчерпывающего описания процесса
создания окон Windows. Для подробного ознакомления с процессом создания и показа
окон Windows обратитесь к документации или специальной литературе.
Каким же образом создать кнопку, чтобы она выглядела как обычно и принадлежала
окну формы
Form1? Для этого нужно при вызове функции CreateWindow изменить три
параметра:
dwStyle, hWndParent и hInstance. В параметре стиля окна указываем что оно
является дочерним:
WS_CHILD; указываем идентификатор окна-предка или окна-
владельца:
Form1.Handle; указываем уникальный идентификатор экземпляра
приложения, который операционная система передает приложению сразу после
запуска:
hInstance. В Delphi для этого имеется специальная глобальная переменная,
которая так и называется:
var HInstance: LongWord. Эта переменная описана в модуле
SysInit. Хотя в операционных системах Windows NT/2000/XP этот параметр при
создании окна просто игнорируется.
Итак, вызов функции
CreateWindow для создания кнопки на форме Form1:
hw:= CreateWindow(
Основы компьютерной графики для программистов 60 ____________________________________________________________________________________________________________________ ); Однако для создания стандартных элементов управления можно воспользоваться упрощенной схемой. Например, для создания кнопки можно указать предопределенный класс окна “BUTTON”, который нужно передать как строку, оканчивающуюся нулевым символом, в Object Pascal это тип PChar. Для следующего примера добавьте на форму приложения еще одну кнопку. Система Delphi даст ей имя Button2. Придайте обработчику нажатия на кнопку Button2 следующий вид. procedure TForm1.Button2Click(Sender: TObject); var hw: HWND; begin hw:= CreateWindow( PChar(‘BUTTON’), PChar(‘MyWindow’), WS_VISIBLE, 100,30, 70,50, 0, 0, 0, nil); //ShowWindow(hw,SW_SHOW); end; При указании параметра WS_VISIBLE даже не обязательно вызывать функцию показа окна на экране. Оно будет автоматически видимым сразу после создания с помощью функции CreateWindow. Поэтому вызов функции ShowWindow специально показан закомментированным как необязательный. В результате работы данной процедуры вы должны увидеть на экране кнопку, у которой имеется строка заголовка как у обычного окна с надписью MyWindow. Эта же надпись будет помещена и на самой кнопке. Кнопка будет существовать как отдельное окно на рабочем столе Windows. Замечание. В данной теме не приводится исчерпывающего описания процесса создания окон Windows. Для подробного ознакомления с процессом создания и показа окон Windows обратитесь к документации или специальной литературе. Каким же образом создать кнопку, чтобы она выглядела как обычно и принадлежала окну формы Form1? Для этого нужно при вызове функции CreateWindow изменить три параметра: dwStyle, hWndParent и hInstance. В параметре стиля окна указываем что оно является дочерним: WS_CHILD; указываем идентификатор окна-предка или окна- владельца: Form1.Handle; указываем уникальный идентификатор экземпляра приложения, который операционная система передает приложению сразу после запуска: hInstance. В Delphi для этого имеется специальная глобальная переменная, которая так и называется: var HInstance: LongWord. Эта переменная описана в модуле SysInit. Хотя в операционных системах Windows NT/2000/XP этот параметр при создании окна просто игнорируется. Итак, вызов функции CreateWindow для создания кнопки на форме Form1: hw:= CreateWindow( http://www.ksu.ru/persons/9134.ru.html
Страницы
- « первая
- ‹ предыдущая
- …
- 58
- 59
- 60
- 61
- 62
- …
- следующая ›
- последняя »