процедурное программирование в Fox Pro

  • Автор темы Guest
  • Дата начала
Статус
Закрыто для дальнейших ответов.
G

Guest

#1
Кто может!? Помогите! Я новичок!
Вот мое задание:
Написать текст программы, отображающей на экране главное меню, состоящее из 4-х пунктов: Склад, Товар, Отчеты, Выход.
Каждый пункт должен иметь падающее меню из нескольких команд.
Склад________Товар______Отчеты_____Выход
Склад1_______Трубы______Отчет1_____Выход из программ
Склад2______Сантехника___Отчет2
Организовать выход из меню.
Вот "организовать выход из меню" у меня и не получается!
Вот полный текст проги.
DEFINE MENU baza
DEFINE PAD sklad OF baza PROMPT 'склад'
DEFINE PAD tovar OF baza PROMPT 'товар'
DEFINE PAD otcheti OF baza PROMPT 'отчеты'
DEFINE PAD vixod OF baza PROMPT 'выход'
DEFINE POPUP skl
DEFINE BAR 1 OF skl PROMPT 'склад1'
DEFINE BAR 2 OF skl PROMPT 'склад2'
DEFINE BAR 3 OF skl PROMPT 'выход из меню'
DEFINE POPUP tov
DEFINE BAR 1 OF tov PROMPT 'трубы'
DEFINE BAR 2 OF tov PROMPT 'сантехника'
DEFINE BAR 3 OF tov PROMPT 'выход из меню'
DEFINE POPUP otch
DEFINE BAR 1 OF otch PROMPT 'отчет1'
DEFINE BAR 2 OF otch PROMPT 'отчет2'
DEFINE BAR 3 OF otch PROMPT 'выход из меню'
ON SELECTION BAR 3 OF skl DO proc1 WITH BAR()
ON SELECTION BAR 3 OF tov DO proc1 WITH BAR()
ON SELECTION BAR 3 OF otch DO proc1 WITH BAR()
ON PAD sklad OF baza ACTIVATE POPUP skl
ON PAD tovar OF baza ACTIVATE POPUP tov
ON PAD otcheti OF baza ACTIVATE POPUP otch
ON SELECTION PAD vixod OF baza QUIT
ACTIVATE MENU baza
PROCEDURE proc1
PARAMETERS pbar
IF BAR()=3
DEACTIVATE POPUP
ENDIF
RETURN
Как мне заставить деактивироваться любое POPUP-меню по желанию?
 
S

Sergey_vfp

#2
Привет. Попробуй следующие:

Set SYSMENU TO
Set sysmenu auto
DEFINE PAD sklad OF _msysmenu PROMPT 'склад'
DEFINE PAD tovar OF _msysmenu PROMPT 'товар'
DEFINE PAD otcheti OF _msysmenu PROMPT 'отчет'
DEFINE PAD vixod OF _msysmenu PROMPT 'выход'
DEFINE POPUP skl
DEFINE BAR 1 OF skl PROMPT 'склад1'
DEFINE BAR 2 OF skl PROMPT 'склад2'
DEFINE POPUP tov
DEFINE BAR 1 OF tov PROMPT 'трубы'
DEFINE BAR 2 OF tov PROMPT 'сантехника'
DEFINE POPUP otch
DEFINE BAR 1 OF otch PROMPT 'отчет1'
DEFINE BAR 2 OF otch PROMPT 'отчет2'
ON SELECTION BAR 3 OF skl DO proc1 WITH BAR()
ON SELECTION BAR 3 OF tov DO proc1 WITH BAR()
ON SELECTION BAR 3 OF otch DO proc1 WITH BAR()
ON PAD sklad OF _msysmenu ACTIVATE POPUP skl
ON PAD tovar OF _msysmenu ACTIVATE POPUP tov
ON PAD otcheti OF _msysmenu ACTIVATE POPUP otch
ON SELECTION PAD vixod OF _msysmenu do konec
ACTIVATE MENU _msysmenu
Read events

Procedure konec
Clear events
Set sysmenu to defa
_Screen.CLOSABLE=.T.
Cancel
Endproc


Если надо описание, пиши на форуме (првда я редко бываю) или на sergey_777@tut.by

Удачи. Сергей. :)
 
Статус
Закрыто для дальнейших ответов.