TURBO PASCAL

Новости           

Программы

Turbo Pascal

Игры

Документация

"Странности"

FAQ

Ссылки

Благодарности

От автора

Новые элементы меню

     Следующий шаг в создании элемента меню состоит в определении
того, куда его включить.

               Выбор места вставки нового элемента

     Перед вставки нового элемента меню нужно решить,  где вы хо-
тите выводить его в меню, и подсветить предыдущую строку в облас-
ти схемы меню.  В общем случае,  если вы хотите поместить элемент
меню  после другого оператора,  вам нужно подсветить существующий
оператор и включить под ним новый.

     Если вы хотите вставить команду вывода всплывающего  меню на
том же уровне,  но после данной команды вывода всплывающего меню,
правило становится несколько более сложным. Если не соблюдать ак-
куратность, то новый элемент выведется в неверном месте.

     Предположим, например,  что  вы хотите добавить к следующему
меню две команды:  новую команду Stored order во всплывающем меню
Arrange List,  и  команду  Quit,  которая выводится в строке меню
после Widgets.
          +------------------------------------------+
          ¦ - ¦       TEST MENU: MENU_1              ¦
          +------------------------------------------¦
          ¦Widgets_                                  ¦
          +------------------------------------------¦
          ¦_List_________Ctrl+L_¦                    ¦
          ¦ Add...       Ctrl+A ¦                    ¦
          +---------------------¦                    ¦
          ¦ Arrange List       >¦                    ¦
          +---------------------+                    ¦
          ¦                                          ¦
          ¦                                          ¦
          +------------------------------------------+

     Рис. 5.7 Меню Widgets

              +----------------------------------------+
              ¦              MENU_1                  ¦^¦
              +--------------------------------------+-¦
              ¦ POPUP "&Widgets"                     ¦_¦
              ¦___MENUITEM_"&List\tCtrl+L"___________¦_¦
              ¦   MENUITEM "&Add...\tCtrl+A"         ¦_¦
              ¦   MENUITAM SEPARATOR                 ¦_¦
              ¦   POPUP "A&rrange List"              ¦_¦
              ¦      MENUITEM "&Ascending\tCtrl+F2"  ¦_¦
              ¦      MENUITEM "&Descending\tCtrl+F3" ¦_¦
              ¦   __EndPopup__                       ¦_¦
              ¦ __EndPopup__                         ¦_¦
              ¦               __EndMenu__            ¦_¦
              ¦                                      ¦_¦
              ¦                                      +-¦
              ¦                                      ¦v¦
              +--------------------------------------+-¦
              ¦<¦__________________________________¦>¦ ¦
              +----------------------------------------+

     Рис. 5.8 Схема записей для меню Widgets

     Добавить команду Stored Order достаточно просто. Нужно найти
оператор POPUP "Arrange List...",  а затем решить, куда нужно по-
местить новую команду вывода всплывающего меню.

     - Чтобы  она  стала первой командой, нужно переместить подс-
       ветку на POPUP "Arrange List..." и добавить команду.

     - Если она должна следовать за одной из команд вывода всплы-
       вающего  меню  (как  Descending),  подсветите  эту команду
       (MENUITEM Descending) и добавьте команду.

     Добавить команду Quit несколько более сложно.  Если вы попы-
таетесь добавить  команду,  подсветив Widgets,  то  новая команда
выведется непосредственно под Widgets и будет частью всплывающего
меню Widgets.  Поскольку  вы  хотите,  чтобы  данная команда была
частью строки меню с Widgets, нужно добавить ее после всплывающе-
го меню Widgets.

     Редактор меню указывает на начало всплывающего меню операто-
ром POPUP, а на конец - оператором _END POPUP_. Так как всплываю-
щее меню  Aggange  List  встроено во сплывающее меню Widgets,  то
присутствует два оператора _END POPUP_. В схеме встроенное всплы-
вающее  меню  выровнено с отступом относительно того всплывающего
меню,  в которое оно встроено. Благодаря этому легко увидеть, ка-
кое  меню  встроено  в другое и найти соответствующий завершающий
оператор.

     Если  вы  посмотрите на схему меню, то увидите, что оператор
_END POPUP_ меню Arrange List имеет отступ относительно оператора
_END POPUP_,  который за ним следует.  Второй оператор  завершает
всплывающее меню Widgets.

     Чтобы добавить команду Quit, подсветите второй оператор _ENP
POPUP_ и добавьте команду. После этого схема меню будет выглядеть
следующим образом:

+---------------------------------------------------------------+
¦ - ¦                  MENU : MENU_1                    ¦ ^ ¦ v ¦
+---------------------------------------------------------------¦
¦+--------------------+¦ - ¦       TEST MENU : MENU_1           ¦
¦¦Item text           ¦+----------------------------------------¦
¦¦+------------------+¦¦_Widgets___                             ¦
¦¦¦&Ascending\tCtrl+F¦¦+----------------------------------------¦
¦¦+------------------+¦¦ List        Ctrl+L ¦                   ¦
¦+--------------------+¦ Add...      Ctrl+A ¦                   ¦
¦+--------------------++---------------------------------------+¦
¦¦Item id             ¦¦_ArrangeList______¦_Ascending__Ctrl+F2_¦¦
¦¦+---------++-------+¦+------------------¦ Descending Ctrl+F3 ¦¦
¦¦¦wmnnu_Asc¦¦103    ¦¦¦                  +--------------------+¦
¦¦+---------++-------+¦¦                                        ¦
¦+--------------------++----------------------------------------¦
¦ Item type  Break before ¦               MENU_1              ¦^¦
¦                         ¦POPUP "&Widgets"                   +-¦
¦ > Pop-up   <*No break   ¦__MENUITEM_"&List\tCtrl+L"_________¦_¦
¦<*Menu item > Menu bar   ¦  MENUITEM "&Add...\tCtrl+A"       ¦_¦
¦ > Separator   break     ¦  MENUITAM SEPARATOR               ¦_¦
¦            > Menu break ¦  POPUP "A&rrange List"            ¦_¦
¦            > Help break ¦    MENUITEM "&Ascending\tCtrl+F2" ¦_¦
¦-------------------------¦    MENUITEM "&Descending\tCtrl+F3"¦_¦
¦ Initial state           ¦  __EndPopup__                     ¦_¦
¦                         ¦__EndPopup__                       ¦_¦
¦ <*Enabled               ¦              __EndMenu__          ¦_¦
¦ > Disabled   П Checked  ¦__EndPopup__                       +-¦
¦ > Grayed                ¦                                   ¦v¦
¦                         +-----------------------------------+-¦
¦                         ¦<¦_______________________________¦>¦ ¦
+---------------------------------------------------------------+

     Рис. 5.9 Меню с новыми добавленными элементами

                   

На главную страницу

(с)Все права защищены

По всем интересующим вопросам  прошу писать на электронный адрес

PROext: Top 1000 Rambler's Top100 Rambler's Top100
Hosted by uCoz