Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПОУК / 09 семестр / Книги и методические указания / Руководство программиста в Photon.doc
Источник:
Скачиваний:
364
Добавлен:
04.03.2014
Размер:
7.99 Mб
Скачать

Создание панели меню

Чтобы научиться привязывать ответные реакции, давайте создадим два функционирующих меню – "File" и "Help" – которые Вы сможете потом включить в ваши собственные приложения.

В PhAB'е меню делаются из двух кусков:

  1. кнопки меню, которой Вы щёлкните, чтобы отобразить меню;

  2. модуля меню, который содержит пункты меню.

Используя привязывание ответных реакций, Вы свяжете модули меню с кнопками "File" и "Help" на панели меню. Вы также свяжете ответную реакцию кодового типа с пунктом меню "Quit" в модуле меню "File". Эта ответная реакция позволяет пункту "Quit" закрывать приложение.

  1. Из меню "File" PhAB выберите пункт "New" для запуска нового приложения. Выберите стиль "Plain Window".

  2. Сохраните приложение как tut3 (По информации о сохранении Вашего приложения см. предыдущий урок или раздел "Сохранение приложения" в главе "Работа с приложениями").

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

 Если Вы случайно щёлкнули на кнопке "Test" на правом конце панели заголовка модуля, окно не будет изменять размеры или принимать новые виджеты. Если это случилось, просто щёлкните ещё раз на кнопку "Test".

После того, как Вы завершите следующее действие, панель меню будет выглядеть таким образом:

  1. Разместите виджет PtMenButton на только что созданной Вами панели меню. Кнопка меню автоматически центрируется по вертикали на панели меню.

  2. Перейдите на панель управления ресурсами и щёлкните на имени экземпляра виджета сразу после имени класса. Измените имя экземпляра кнопки на base_file:

  1. Измените ресурс "Label Text" кнопки на "File".

  2. Разместите другой виджет PtMenuButton следом за первым. Измените имя экземпляра на base_help и текст на "Help".

Создание модуля меню "File"

Теперь, когда Вы имеете кнопки меню, Вам необходимо создать модули меню. Давайте начнём с меню "File".

  1. Из меню "Application" выберите "Menus", чтобы открыть переключатель модулей. Этот переключатель позволит Вам создать или просмотреть любой тип модуля PhAB.

  2. В блоке "Name" наберите filemenu, нажмите <Enter>. Поскольку модуля меню ещё не существует, PhAB спросит Вас, создавать ли модуль. Щёлкните на "Yes".

Вы увидите, что модуль меню появится в Вашей рабочей области и имя модуля в прокручиваемом списке переключателя модулей.

  1. Переключатель модулей остаётся на экране, позволяя вам создавать модули дальше. Однако, Вам надо создать пока только одно меню, поэтому щёлкните "Done", чтобы закрыть переключатель.

Добавление пунктов меню

Давайте теперь добавим несколько пунктов меню в меню "File".

 Если Вы щёлкните на другом модуле, модуль меню станет невыбранным, что означает, что Вы не можете с ним работать. Чтобы вновь выбрать модуль меню, щёлкните на его панели заголовка.

  1. Щёлкните на ресурсе "Menu Items" на панели управления ресурсами. Вы увидите редактор меню:

Если Вы посмотрите на список пунктов меню, то увидите, что выбран пункт "New". Этот специальный пункт позволяет Вам добавлять пункты в меню.

  1. Чтобы добавить Ваш первый пункт меню – который, так уж случилось, тоже будет называться "New" – щёлкните на область "Item Text", затем наберите "New".

  2. Теперь присвойте пункту имя экземпляра. В области "Inst Name" наберите file_new.

  3. Щёлкните на "Apply", чтобы добавить пункт в меню. Вы увидите имя пункта в списке "Menu Items", предварённое префиксом CMD. Префикс CMD означает, что это командный пункт; то есть пункт, вызывающий ответную реакцию PhAB'а.

  4. Повторите вышеприведенные шаги для создания пунктов меню, помеченных "Save" и "Save As". Присвойте этим пунктам имена экземпляров file_save и file_as.

  5. До сих пор Вы добавляли пункты меню командного типа. Теперь добавьте пункт типа разделитель. Просто щёлкните на кнопке "Separator" возле верхнего правого угла. Вы увидите список стилей разделителя:

  1. Выберите стиль или просто щёлкните на "Apply", чтобы получить принимаемый по умолчанию стиль, каковой является "Etched – In".

  2. Теперь давайте добавим пункт "Quit". Щёлкните на кнопке "Command", затем зададим "Quit" в тексте пункта и file_quit как имя экземпляра.

  3. Вы завершили работу с модулем меню, так что щёлкните "Done". Модуль отобразит созданные Вами пункты:

  1. Вам понадобится аккуратно попридержать этот модуль в сторонке, пока Вы будете работать над своей следующей задачей. Поэтому щёлкните на кнопке минимизации приложения (левая кнопка на правой стороне панели заголовка) или выберите кнопку меню "Work" (верхний левый угол) и выберите "Minimize".