Один из пользователей DevelStudio попросил меня показать как сделать отображение формы в компоненте TPageControl.
Я написал простую функцию для этих целей.
Пользуемся на здоровье!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | function loadFormsToPages(TPageControl $page, $forms){ if(!is_array($forms)) return false; $s = sizeof($forms); for($i=0;$i<$s;$i++){ $form = $forms[$i]; if($form instanceof TForm) $formsCap[] = $form->caption; } $page->pagesList = implode(_BR_,$formsCap); $pages = $page->pages(); $s = sizeof($pages); for($i=0;$i<$s;$i++){ $form = $forms[$i]; if(!$form instanceof TForm) continue; $form->parent = $pages[$i]; $form->windowState = wsMaximized; $form->borderStyle = bsNone; $form->visible = true; } }; /* Пример работы * В первый параметр передаем компонент TPageControl. * Во второй параметр передаем массив формы. * Для каждой формы создается вкладка и имя вкладки совпадает с именем формы. * Вот так все просто */ loadFormsToPages(c("pages1"), array(c("form2"), c("form3"))); |
function loadFormsToPages(TPageControl $page, $forms){
if(!is_array($forms))
return false;
$s = sizeof($forms);
for($i=0;$i<$s;$i++){
$form = $forms[$i];
if($form instanceof TForm)
$formsCap[] = $form->caption;
}
$page->pagesList = implode(_BR_,$formsCap);
$pages = $page->pages();
$s = sizeof($pages);
for($i=0;$i<$s;$i++){
$form = $forms[$i];
if(!$form instanceof TForm)
continue;
$form->parent = $pages[$i];
$form->windowState = wsMaximized;
$form->borderStyle = bsNone;
$form->visible = true;
}
};
/* Пример работы
* В первый параметр передаем компонент TPageControl.
* Во второй параметр передаем массив формы.
* Для каждой формы создается вкладка и имя вкладки совпадает с именем формы.
* Вот так все просто
*/
loadFormsToPages(c("pages1"), array(c("form2"), c("form3")));