Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Как скрыть закладки в PageFrame  [new]
Scorpio_md
Member

Откуда: Тирасполь
Сообщений: 451
Добрый вечер.
Подскажите, создал PageFrame, там 18 закладок. У меня теперь такая проблема, мне необходимо спрятать некоторые закладки, по мере доступа. Т.е. пользователи должны видеть только те, которые им можно, а остальные вообще спрятать, чтобы их не дразнить.

Как мне решить эту проблему ???
19 апр 07, 22:39    [4045445]     Ответить | Цитировать Сообщить модератору
 Re: Как скрыть закладки в PageFrame  [new]
alex11100
Guest
автор
необходимо спрятать


может сделать недоступными? и успокоиться?


ну если хочется, то только прибивать,
свойства визибл у странички нет
PUBLIC oform1

oform1=NEWOBJECT("form1")
oform1.Show
RETURN


DEFINE CLASS form1 AS form


	Top = 0
	Left = 0
	Height = 231
	Width = 375
	DoCreate = .T.
	Caption = "Form1"
	*-- XML Metadata for customizable properties
	_memberdata = ""
	Name = "Form1"


	ADD OBJECT pageframe1 AS pageframe WITH ;
		ErasePage = .T., ;
		PageCount = 18, ;
		Top = 12, ;
		Left = 0, ;
		Width = 372, ;
		Height = 169, ;
		Name = "Pageframe1", ;
		Page1.Caption = "Page1", ;
		Page1.Name = "Page1", ;
		Page2.Caption = "Page2", ;
		Page2.Name = "Page2", ;
		Page3.Caption = "Page3", ;
		Page3.Name = "Page3", ;
		Page4.Caption = "Page4", ;
		Page4.Name = "Page4", ;
		Page5.Caption = "Page5", ;
		Page5.Name = "Page5", ;
		Page6.Caption = "Page6", ;
		Page6.Name = "Page6", ;
		Page7.Caption = "Page7", ;
		Page7.Name = "Page7", ;
		Page8.Caption = "Page8", ;
		Page8.Name = "Page8", ;
		Page9.Caption = "Page9", ;
		Page9.Name = "Page9", ;
		Page10.Caption = "Page10", ;
		Page10.Name = "Page10", ;
		Page11.Caption = "Page11", ;
		Page11.Name = "Page11", ;
		Page12.Caption = "Page12", ;
		Page12.Name = "Page12", ;
		Page13.Caption = "Page13", ;
		Page13.Name = "Page13", ;
		Page14.Caption = "Page14", ;
		Page14.Name = "Page14", ;
		Page15.Caption = "Page15", ;
		Page15.Name = "Page15", ;
		Page16.Caption = "Page16", ;
		Page16.Name = "Page16", ;
		Page17.Caption = "Page17", ;
		Page17.Name = "Page17", ;
		Page18.Caption = "Page18", ;
		Page18.Name = "Page18"


	ADD OBJECT command1 AS commandbutton WITH ;
		Top = 192, ;
		Left = 144, ;
		Height = 27, ;
		Width = 84, ;
		Caption = "Command1", ;
		Name = "Command1"


	PROCEDURE command1.Click
		for each loPage in thisform.pageframe1.Pages
			if inlist(loPage.PageOrder,2,4,6,8,10,12,16,18)
				loPage.enabled = .f.
			endif
		endfor
		for each loPage in thisform.pageframe1.Pages
			if !loPage.enabled
				thisform.pageframe1.RemoveObject(loPage.name)
			endif
		endfor
	ENDPROC


ENDDEFINE
20 апр 07, 09:05    [4046157]     Ответить | Цитировать Сообщить модератору
 Re: Как скрыть закладки в PageFrame  [new]
Al_fa
Member

Откуда: Курган
Сообщений: 42
Scorpio_md
Добрый вечер.
Подскажите, создал PageFrame, там 18 закладок. У меня теперь такая проблема, мне необходимо спрятать некоторые закладки, по мере доступа. Т.е. пользователи должны видеть только те, которые им можно, а остальные вообще спрятать, чтобы их не дразнить.

Как мне решить эту проблему ???

Можно их сделать disable + очистить их caption, или полностью их удалять
20 апр 07, 09:21    [4046226]     Ответить | Цитировать Сообщить модератору
 Re: Как скрыть закладки в PageFrame  [new]
Ffffffffffff
Guest
Можно еще сделать два PageFrame. Один горизонтально,
один вертикально (TabOrientation). А у PageFrame уже есть
свойство Visible.
20 апр 07, 10:07    [4046521]     Ответить | Цитировать Сообщить модератору
 Re: Как скрыть закладки в PageFrame  [new]
Scorpio_md
Member

Откуда: Тирасполь
Сообщений: 451
Спасибо. Попробуем поиграться с динамическим количеством закладок.
20 апр 07, 12:02    [4047582]     Ответить | Цитировать Сообщить модератору
 Re: Как скрыть закладки в PageFrame  [new]
Scorpio_md
Member

Откуда: Тирасполь
Сообщений: 451
А у меня теперь возник такой вопрос. Создаю закладки динамически в зависимости от тех которые нужны. Но раньше у меня бы отработка по нажатию клавиш:
LPARAMETERS nKeyCode, nShiftAltCtrl

*SET STEP ON 

DO case
   CASE thisform.ics_li_.ActivePage = 1 && Преступления
        DO CASE 
           CASE nKeyCode = -1  
                thisform.ics_li_.prestupl_.lstLiList.When
                DO FORM ics_prestupl_edit WITH thisform.nLi, 0 
                thisform.update_form
           CASE nKeyCode = -3  
                thisform.ics_li_.prestupl_.lstLiList.When
                DO FORM ics_prestupl_edit WITH thisform.nLi, thisform.nni 
                thisform.update_form
           CASE nKeyCode = -5 AND thisform.nni <> 0 && Досье
                thisform.ics_li_.prestupl_.lstLiList.When
                DO FORM ics_prest WITH thisform.nLi, thisform.nni 
                thisform.update_form
        ENDCASE 
   CASE thisform.ics_li_.ActivePage = 4 && Разрешения
        DO CASE 
           CASE nKeyCode = -1  
                thisform.ics_li_.razresh_.lstLiList.When
                DO FORM ics_dokument_edit WITH thisform.nLi, 0 
                thisform.update_form
           CASE nKeyCode = -3  
                thisform.ics_li_.razresh_.lstLiList.When
                DO FORM ics_dokument_edit WITH thisform.nLi, thisform.nni 
                thisform.update_form
        ENDCASE 

Теперь РАЗРЕШЕНИЯ у меня могут иметь
thisform.ics_li_.ActivePage
не 4 а 1, и как мне теперь правильно отработать на форме нажатие клавиш.
21 апр 07, 19:28    [4053399]     Ответить | Цитировать Сообщить модератору
 Re: Как скрыть закладки в PageFrame  [new]
alex11100
Guest
привязываться к номеру страницы не есть хорошо

есть 2 способа

1.сделать класс страница
класс пейджфрейм
пометить страничку значением доп.свойства
на взлете при добавлении страницы

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

в каком-то методе формы такой код
local loPage
loPage = thisform.pgFrame.Pages(thisform.pgFrame.ActivePage)
do case
    case loPage.tag = '....'
            ...
    case loPage.tag = '....'
            ...
endcase 
23 апр 07, 09:43    [4055290]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить