On-line: гостей 3. Всего: 3 [подробнее..]
АвторСообщение



Пост N: 8
Зарегистрирован: 02.07.12
ссылка на сообщение  Отправлено: 05.01.13 13:57. Заголовок: вопрос по ТАБ-ам и вкладкам


Собственно сам вопрос - можно ли в табе скрыть вкладку программным путем (скажем через настроечный файл ini)? Приведите примерчик пожалуйста Спасибо

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 1 [только новые]


moderator




Пост N: 438
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 05.01.13 14:45. Заголовок: Eduard пишет: можно..


Eduard пишет:

 цитата:
можно ли в табе скрыть вкладку программным путем


Да, это возможно с помощью небольшого трюка (используя методы DeletePage и AddPage).

Посмотрите довольно древний, но рабочий , пример ниже:

 цитата:
#include "minigui.ch" 

static nTotalPage := 2

Function Main

DEFINE WINDOW Form_1 ;
AT 0,0 WIDTH 480 HEIGHT 300 ;
TITLE 'TAB / Page' ;
MAIN

DEFINE MAIN MENU
DEFINE POPUP 'Actions'
MENUITEM 'Hide Page 2' ACTION f_hide_page( 2 )
MENUITEM 'Add Page 2' ACTION f_add_page( 2 )
END POPUP
END MENU

ON KEY F1 ACTION f_page_value( 1 )
ON KEY F2 ACTION f_page_value( 2 )

DEFINE STATUSBAR
STATUSITEM ""
END STATUSBAR

DEFINE TAB Tab_1 ;
AT 10,10 ;
WIDTH 445 ;
HEIGHT 200 ;
VALUE 1 ;
TOOLTIP 'Tab Control' ;
ON CHANGE F_CHANGE()

PAGE 'Press F1'
@ 60,10 textbox txt_1 value '1-uno'
@ 90,10 textbox txt_2 value '2-Dos'
@ 120,10 textbox txt_3 value '3-Tres'
END PAGE

PAGE 'Press F2'
@ 60,100 textbox txt_a value 'A-Uno'
@ 90,100 textbox txt_b value 'B-Dos'
END PAGE

END TAB

f_change()

END WINDOW

Form_1.Center
Form_1.Activate

Return Nil

*____________________________________________________*

func f_hide_page( n_para )
if nTotalPage > 1
nTotalPage--
Form_1.txt_a.Hide
Form_1.txt_b.Hide
Form_1.tab_1.DeletePage ( 2 )
form_1.tab_1.value := n_para - 1
Form_1.tab_1.refresh()
F_CHANGE()
endif
return nil

*____________________________________________________*

func f_add_page( n_para )
if nTotalPage < 2
nTotalPage++
Form_1.Tab_1.AddPage ( n_para , 'Press F2' )
form_1.tab_1.caption( n_para ) := 'Press F2'
Form_1.Tab_1.AddControl ( 'txt_a', n_para , 60 , 100 )
Form_1.Tab_1.AddControl ( 'txt_b', n_para , 90 , 100 )
Form_1.txt_a.Show
Form_1.txt_b.Show
form_1.tab_1.value := n_para
F_CHANGE()
endif
return nil

*____________________________________________________*

func f_page_value( n_para )
form_1.tab_1.value := n_para
f_change()
return nil

*____________________________________________________*

func f_change

local n_value := form_1.tab_1.value

if n_value == 1
form_1.txt_1.setfocus
else
form_1.txt_a.setfocus
endif

Form_1.StatusBar.Item(1) := ;
'Form_1.Tab_1.Caption(' + hb_ntos(n_value) + ') = '+;
form_1.tab_1.caption( form_1.tab_1.value )

return nil



Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 520
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет