Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / skip for в меню / 9 сообщений из 9, страница 1 из 1
18.11.2004, 14:52
    #32789338
Ефим
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
skip for в меню
Проблема с меню.
В главном prg запускается основная форма, которая должна оставаться запущенной в течение всей работы программы.
Я приделал меню. Но некоторые пункты подменю должны быть недоступны в зависимости от прав пользователя, которые прописаны в начале программы переменными.
Вот код описания меню:

SET SYSMENU TO
SET SYSMENU AUTOMATIC

DEFINE PAD Sroki OF _MSYSMENU PROMPT "Сроки" COLOR SCHEME 3
ON SELECTION PAD Sroki OF _MSYSMENU do Sroki_v

DEFINE PAD Arhiv OF _MSYSMENU PROMPT "Архив" COLOR SCHEME 3
ON PAD Arhiv OF _MSYSMENU ACTIVATE POPUP Arhiv_v
DEFINE POPUP Arhiv_v MARGIN RELATIVE SHADOW COLOR SCHEME 4
DEFINE BAR 1 OF Arhiv_v PROMPT "Выбрать год"
DEFINE BAR 2 OF Arhiv_v PROMPT "Сбросить новый архив" skip for nsbros_arh=.f.

DEFINE PAD Prava OF _MSYSMENU PROMPT "Права" COLOR SCHEME 3 skip for nedit_polz=.f.

DEFINE PAD Price OF _MSYSMENU PROMPT "Прайс" COLOR SCHEME 3
ON PAD Price OF _MSYSMENU ACTIVATE POPUP Price_v
DEFINE POPUP Price_v MARGIN RELATIVE SHADOW COLOR SCHEME 4
DEFINE BAR 1 OF Price_v PROMPT "Печать"
DEFINE BAR 2 OF Price_v PROMPT "Корректировка" skip for nedit_price=.f.

DEFINE PAD SExit OF _MSYSMENU PROMPT "Выход" COLOR SCHEME 3
ON SELECTION PAD SExit OF _MSYSMENU do Vyhod


read event
*----------------------------------------------------------------

do form monit


Проблема в том, что когда оставляешь do form monit, а убираешь read event, подменю становятся все недоступны независимо от значений переменных, которые описывают доступ.
Если переставляешь do form monit в один из пунктов меню и запускаешь оттуда - все нормально. Но мне надо, чтобы форма все время была открыта, а меню можно было воспользоваться в любой момент.

Не подскажете, можно ли это реализовать и как?

Я предполагаю, что всё дело в skip for или в переменных, которые там используются. Они что ли скрыты во время выполнения формы?.. В MSDN читал что-то такое, но ничё не понял.
...
Рейтинг: 0 / 0
18.11.2004, 15:46
    #32789478
AiSK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
skip for в меню
read event
*----------------------------------------------------------------

do form monit

Поменяй местами

Сперва

do form monit

а потом read event
...
Рейтинг: 0 / 0
18.11.2004, 16:02
    #32789534
Ефим
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
skip for в меню
То же самое.
Подменю все без исключения недоступны.
...
Рейтинг: 0 / 0
18.11.2004, 16:23
    #32789617
AiSK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
skip for в меню
nsbros_arh
nedit_polz
Я так понимаю, что они глобальные переменные и вы присвоили им значения до запуска меню?
...
Рейтинг: 0 / 0
18.11.2004, 16:33
    #32789661
Ефим
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
skip for в меню
Конечно.
...
Рейтинг: 0 / 0
18.11.2004, 17:40
    #32789921
po2
po2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
skip for в меню
Если форма модальная, то все позиции меню будут недоступными. Хотя есть способ получить доступ к меню из модальной формы, переопределив его в одном из стартовых методов(событий) формы.
...
Рейтинг: 0 / 0
18.11.2004, 18:37
    #32790049
AiSK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
skip for в меню
Да, если сделать форму monit Modeless, то все будет нормально
...
Рейтинг: 0 / 0
19.11.2004, 08:57
    #32790460
Ефим
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
skip for в меню
Поменял местами запуск формы и описание меню и, кажется, получилось.
Всем спасибо.
...
Рейтинг: 0 / 0
19.11.2004, 08:59
    #32790463
Ефим
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
skip for в меню
Забыл. Предварительно сделал Modless для формы monit.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / skip for в меню / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]