WinBinder. Создание форм

Единственное назначение библиотеки WinBinder – создание GUI-форм для Windows.
Любое окно, будь оно родительским или всплывающим, создается функцией wb_create_window. Она находится в самой библиотеке. Чтобы использовать эту функцию, необходимо подключить к проекту файл winbinder.php, который находится в каталоге phpcode/include.
Синтаксис функции таков:
 

int wb_create_window (int parent, int wclass, string [caption], int [xpos], int [ypos], int [width], int [height], int [style], int [param]);


Первый параметр – parent - имя окна родителя. Если создается главное окно, то должно быть пустым, то есть NULL.

Второй – wclass – класс окна. Вот список доступных значений:

ResizableWindow - простое окно;
AppWindow – окно определенного размера;
NakedWindow – окно определенного размера, без рамки и заголовка;
ModalDialog – всплывающее окно, блокирующее работу программы до его закрытия;
ModelessDialog – простое всплывающее окно;
PopupWindow – еще одно простое всплывающее окно;
ToolDialog – всплывающее окно с маленьким заголовком.

Затем идет заголовок окна, позиция по горизонтали, позиция по вертикали, ширина, высота, стиль окна и его параметры.

Для позиционирования окна по центру можно использовать константу WBC_CENTER. Список всех доступных констант приведен в официальном мануале или на сайте разработчиков библиотеки по адресу http://winbinder.org/manual/reference/constants.html.

Ниже находится исходный код пустой формы.
 

<?php

include "E:/WB/phpcode/include/winbinder.php";
wb_create_window (NULLAppWindow"Пустая форма"380280);
wb_main_loop ();

?>


В этом примере, кроме функции wb_create_window (), есть еще одна - wb_main_loop ().
Она заставляет программу постоянно находиться в памяти, и не выгружаться до тех пор, пока не будет вызвана функция wb_destroy_window (). Здесь не обрабатываются никакие события, поэтому функция wb_destroy_window () не используется. Но если вы хотите использовать какие-нибудь компоненты, и хотите, чтобы они выполняли какие-либо действия, то должны создать функцию обработки событий.

Например:
 

<?php

include "E:/WB/phpcode/include/winbinder.php";
$mainwin wb_create_window (NULLAppWindow"Пустая форма"380280);
wb_create_control ($mainwinPushButton"Click Me"1010100251);
wb_set_handler($mainwin"process_main");
wb_main_loop ();
function 
process_main($window$id){

switch(
$id) {

case 
1:

wb_message_box ($window"Сегодня ".date("d M Y")." года""Message Box"WBC_OK);

break;
case 
IDCLOSE:

wb_destroy_window($window);

break;

}

}

?>

 

int wb_create_control (int parent, int ctlclass , mixed [caption], int [xpos], int [ypos], int [width], int [height], int [id], int [style], int [param], int [ntab]);


Функция wb_create_control создает на окне [parent] компонент [ctlclass], с заголовком или текстом [caption], с отступом от левого края [xpos] и от правого края [ypos], с шириной [width] и высотой [height], ID которого равен [id].
Подробнее в мануале по адресу http://winbinder.org/manual/functions/wb_create_control.html.

Обратите особое внимание на функцию wb_set_handler ().
 

int wb_set_handler (int window, string fn_handler);


Она связывает окно [window] c функцией-обработчиком событий [fn_handler].

Рекомендую посмотреть официальный мануал. Он содержит описание все доступных функций. К сожалению, он доступен только на английском языке и не содержит описания констант.




Рекомендуем почитать

 

Добавить комментарий


Ваше имя:


Комментарий:


Введите: Картинка