Главная » Просмотр файлов » Руководство программиста в Photon

Руководство программиста в Photon (953920), страница 17

Файл №953920 Руководство программиста в Photon (Руководство программиста в Photon) 17 страницаРуководство программиста в Photon (953920) страница 172013-09-22СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 17)

Вы можете также создавать виджет, перетаскивая его иконку из палитры виджетов на панель управления "Module Tree". То место, где Вы сбросили иконку, и определит место виджета в иерархии семейства.

Создание нескольких виджетов

Как только Вы создали виджет, Вы возвращаетесь в выбранный режим. Чтобы остаться в режиме создания, так чтобы Вы могли создать несколько виджетов одного типа:

  1. Нажмите и удерживайте нажатой клавишу <Ctrl>.

  2. Создайте столько виджетов, сколько хотите.

  3. Отпустите <Ctrl>.

Отмена режима создания

Чтобы отменить режим создания, не создавая виджет:

  • щёлкните где-нибудь вне модуля

или

  • щёлкните на модуле правой кнопкой мыши.

Выбор виджетов

В этом разделе мы увидим, как

  • выбирать одиночный виджет

  • выбирать несколько виджетов

  • выбирать виджеты внутри группы

  • выбирать скрытые виджеты.

Когда PhAB находится в режиме выбора, указатель выглядит как стрелка. Чтобы перевести PhAB в режим выбора:

  • щёлкните где-либо вне модуля

или

  • щёлкните правой кнопкой мыши на модуле

или

  • щёлкните на выбранном виджете в палитре виджетов.

Одиночный виджет

Чтобы выбрать одиночный виджет, Вы можете:

  • указать и щёлкнуть

или

  • использовать кнопки "Следующая" и "Предыдущая" в панелях управления ресурсами или ответными реакциями

  • использовать панель управления "Module Tree".

Эти методы описаны ниже.

Метод указать-и-щёлкнуть

Чтобы выбрать одиночный виджет, используя указать-и-щёлкнуть:

  1. Убедитесь, что Вы в режиме выбора

  2. Щёлкните на виджет, используя левую кнопку мыши. Вокруг виджета появятся метки-манипуляторы изменения размеров.

Чтобы выбрать родителя данного виджета, удерживайте нажатыми <Shift>+<Alt> и щёлкните на виджет. Это лёгкий способ выбрать PtDivider или PtToolbar.

Метод контрольных панелей

Кнопки "Следующая" и "Предыдущая" на панелях управления ресурсами и ответными реакциями позволяют Вам выбрать любой виджет в текущем модуле.

чтобы выбрать

щёлкните на:

или нажмите

Предыдущий виджет в текущем модуле

<F9>

Следующий виджет в текущем модуле

<F10>

Панель управления "Module Tree" отображает дерево всех виджетов в модуле. Используя это дерево, Вы можете:

  • выбрать виджет внутри группы

  • найти виджет по имени

  • выбрать виджет, скрытый под другим виджетом.

Чтобы выбрать виджет из дерева, щёлкните на имени виджета.

Несколько виджетов

Чтобы выбрать несколько виджетов, Вы можете:

  • использовать охватывающий прямоугольник

или

  • использовать <Shift>+щелчок

или

  • использовать панели управления.

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

Использование охватывающего прямоугольника

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

  1. Разместите указатель выше и левее виджетов, которые Вы хотите выделить.

  2. Если виджеты входят в какой-то контейнер, такой как PtBkgd, убедитесь, что указатель находится внутри контейнера, затем нажмите и удерживайте клавишу <Alt>.

  3. Нажмите и удерживайте левую кнопку мыши, затем протащите указатель вправо вниз. Вы увидите контур, "растущий" на экране.

  4. Когда все виджеты окажутся внутри контура, отпустите кнопку мыши. Вы увидите метки-манипуляторы изменения размеров вокруг области, определённой выбранными виджетами.

Использование "<Shift> и щелчок"

Чтобы добавить или удалить виджет из текущего списка выбранных виджетов, удерживайте нажатой клавишу <Shift> и щёлкайте по виджетам. Этот метод известен также как метод расширенного выбора.

Если виджет ещё не выбран, он добавляется к списку. Если виджет уже выбран, он удаляется из списка.

 Вышеописанные методы выбора нескольких виджетов работают только для виджетов одного уровня иерархии. Например, Вы легко можете выбрать, скажем, две кнопки внутри окна. Вы не сможете расширять этот выбор, включив кнопку, находящуюся внутри панели (pane).

Использование панелей управления

Чтобы выбрать несколько виджетов, используйте кнопки "Следующая" и "Предыдущая" панелей управления ресурсами и ответными реакциями:

  1. Удерживайте нажатой клавишу <Shift>

  2. Щёлкните на кнопку "Next".

Каждый раз при щелчке PhAB добавит следующий виджет текущего модуля к выбранным.

Чтобы удалить последний виджет из текущего списка выбранных виджетов:

  1. Удерживайте нажатой клавишу <Shift>

  2. Щёлкните на кнопку "Previous".

Каждый раз при щелчке PhAB удалит виджет.

Виджеты внутри группы

Чтобы выбрать виджет внутри группы, Вы можете использовать кнопки "Следующая" и "Предыдущая" в панели управления ресурсами или ответными реакциями, или использовать панель управления "Module Tree".

Использование панели "Module Tree"

Чтобы выбрать один виджет внутри группы, используйте панель управления "Module Tree".

  1. Переключитесь на панель управления "Module Tree".

  2. Найдите группу на дереве и щёлкните на имени виджета.

  3. <Shift>+щелчок – чтобы выбрать при необходимости дополнительные виджеты.

  4. Чтобы отредактировать виджет, переключитесь на панель управления ресурсами или ответными реакциями.

Использование кнопок "Следующая" и "Предыдущая"

Чтобы выбрать один или более виджетов внутри группы, используйте кнопки "Следующая" или "Предыдущая":

  1. Щёлкните на каком-либо виджете внутри группы, чтобы выбрать всю группу.

  2. Щёлкайте на кнопке "Next" (или нажмите <F10> на панели управления ресурсами или ответными реакциями, пока не будет выбран нужный Вам виджет.

  3. Чтобы выбрать дополнительные виджеты, нажмите <Shift>, затем вновь щёлкните на кнопке "Следующая".

  4. Вы теперь можете редактировать ресурсы или ответные реакции виджетов.

Скрытые виджеты

Если Вы не можете найти виджет (он может быть скрыт под другим виджетом или вне границ своего контейнера), сделайте следующее:

  1. Используйте кнопки "Следующая" и "Предыдущая" на панелях управления ресурсами или ответными реакциями.

  2. Выберите виджет из панели управления "Module Tree".

  3. Используйте панель управления поиска.

  4. Если виджет выглядит помещённым вне текущих границ своего контейнера, верните его обратно к видимому, используя области X и Y в панели инструментов PhAB.

Для получения более полной информации по панели инструментов и панелям управления см. главу об окружении PhAB.

Выравнивание виджетов

Вы можете выровнять несколько виджетов относительно другого виджета или их родительского контейнера.

Для простого выравнивания используйте кнопку "Align" на панели инструментов PhAB:

и затем выберите способ выравнивания во всплывающем меню.

Для более сложных вариантов выравнивания вызовите диалог "Align Widgets":

  • выбрав кнопку "Align" из панели инструментов PhAB и затем выбрав "Alignment Tool" из меню

или

  • выбрав "Alignment" из меню "Edit" и затем выбрав пункт "Alignment Tool" из подменю

или

  • нажав <Ctrl>+<A>.

По другому виджету

Когда Вы используете этот метод для выравнивания виджетов, виджеты выравниваются по первому выбранному Вами виджету:

  1. Выберите первый виджет

  2. Используйте метод выбора <Shift>+щелчок, выберите остальные виджеты (этот метод описан в разделе "Выбор виджетов").

  3. Для простого выравнивания выберите иконку "Align" из панели инструментов PhAB и сделайте выбор из меню.

  4. Для более сложных вариантов выравнивания вызовите диалог "Align Widgets". Выберите одну или более опций выравнивания, затем щёлкните на кнопке "Align". Не щёлкайте на кнопке "Align to Container".

По родительскому контейнеру

Чтобы выровнять виджеты по их родительскому контейнеру:

  1. Выберите один или несколько виджетов в любом порядке.

  2. Вызовите диалог "Align Widgets", выберите желаемые опции выравнивания, затем щёлкните на соответствующей кнопке "Align to Container".

 Если Вы выбрали и вертикальную, и горизонтальную опции, убедитесь, что щёлкнули на обе кнопки "Align to Container".

  1. Щёлкните на кнопке "Align".

При выравнивании виджетов по контейнеру Вам может понадобиться сохранить их относительные позиции. Чтобы сделать это:

  1. Сгруппируйте виджеты вместе (см. раздел "Выравнивание виджетов, используя группы") в главе "Управление геометрией".

  2. Выровняйте виджеты.

  3. Разбейте, что необязательно, группу на составляющие.

Общепользовательский доступ (СИА) и управление фокусом

Общепользовательский доступ (СИА) является стандартом, описывающим, как пользователь может изменить фокус с помощью клавиатуры. Виджет является фокусируемым, если на него может устанавливаться фокус путём нажатия клавиши СИА или вызовом функции фокусировки.

Изменение фокусировки через клавиатуру

Следующие клавиши перемещают фокус только к фокусируемым виджетам:

чтобы перейти к:

нажмите

следующему виджету

Tab

предыдущему виджету

Shift+Tab

первому виджету в следующем контейнере

Ctrl+Tab

последнему виджету в предыдущем контейнере

Ctrl+Shift+Tab

Чтобы получить информацию о задании порядка, в котором виджеты отслеживаются, см. раздел "Упорядочивание виджетов" в этой главе.

Управление фокусом

Для управления фокусом для виджета используйте следующие флаги:

Pt_ARG_FLAGS:

Pt_GETS_FOCUS

Сделать виджет фокусируемым

Pt_FOCUS_RENDER

Сделать виджет подающим визуальную информацию, когда он имеет фокус.

Дополнительно, используйте для управления фокуса для контейнера следующие флаги Pt_ARG_CONTAINER_FLAGS:

Pt_BLOCK_CUA_FOCUS

Предотвращает использование клавиши СUA для входа в контейнер. Однако, если пользователь щёлкнет внутри контейнера, или функция фокусирования даст контейнеру фокус, клавиши CUA могут использоваться.

Pt_ENABLE_CUA

Даёт родительскому виджету возможность задавать, обрабатывает или не обрабатывает порождённый контейнер клавиши CUA:

  • если этот флаг установлен, код виджета обрабатывает клавиши СUA

  • если он не установлен, клавиши СUA пропускают семейство виджета, пока не будет найден прародитель с установленным флагом. Этот прародитель (если он найден) обрабатывает клавиши.

Pt_ENABLE_CUA_ARROWS

Аналогичен флагу Pt_ENABLE_CUA, но используется только клавишами стрелок.

Ответные реакции фокусировки

Все потомки виджета PtBasic имеют следующие ресурсы ответных реакций:

  • Pt_CB_GOT_FOCUS – вызывается, когда виджет получает фокус

  • Pt_CB_LOST_FOCUS – вызывается, когда виджет теряет фокус.

Виджет может даже отказаться "отдавать" фокус (например, если Вы набрали ошибочную дату в текстовом виджете).

 PtMultiText и PtText имеют специальные версии этих ответных реакций.

Для получения более полной информации см. "Справочник виджетов".

Функции обработки фокусировки

Функции, описанные ниже, имеют дело с фокусировкой. Они описаны в "Справочнике библиотечных функций Photon".

В действительности эти функции не изменяют виджеты, имеющие фокус; они сообщают Вам, где фокус может проходить:

PtFindFocusChild()

Отыскивает ближайший фокусируемый порождённый виджет.

PtFindFocusNextFrom()

Отыскивает следующий виджет, который может получить фокус.

PtFindFocusPrevFrom()

Отыскивает предыдущий виджет, который может получить фокус.

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

PtContainerFindFocus()

Отыскивает виджет, имеющий фокус, в той же семейной иерархии, что и виджет.

PtIsFocused()

Определяет, на каком уровне виджет имеет фокус.

Вы можете использовать эти функции, чтобы передать фокус виджету:

PtContainerFocusNext()

Передаёт фокус следующему Pt_GETS_FOCUS виджету.

PtContainerFocusPrev()

Передаёт фокус предыдущему Pt_GETS_FOCUS виджету.

PtContainerGiveFocus() или PtGiveFocus()

Передаёт фокус виджету – эти функции идентичны.

PtContainerNullFocus()

Отменяет фокус для виджета.

PtGlobalFocusNext()

Передаёт фокус следующему виджету.

PtGlobalFocusNextContainer()

Передаёт фокус виджету следующего контейнера.

PtGlobalFocusNextFrom()

Передаёт фокус виджету, следующему за заданным.

PtGlobalFocusPrev()

Передаёт фокус предыдущему виджету.

PtGlobalFocusPrevContainer()

Передаёт фокус виджету предыдущего контейнера.

PtGlobalFocusPrevFrom()

Передаёт фокус виджету, находящемуся перед заданным.

Упорядочивание виджетов

В PhAB каждый виджет присутствует перед или позади других виджетов. Это известно как порядок виджетов, и Вы можете видеть его, когда несколько виджетов перекрываются. Порядок виджетов диктует то, как Вы можете использовать клавиши СUА для перемещений между виджетами.

 Если Вы не использовали PhAB, порядок виджетов – это порядок, в котором виджеты были созданы. Чтобы изменить порядок, см. раздел "Упорядочивание виджетов" в главе "Управление виджетами в программном коде приложения".

Характеристики

Тип файла
Документ
Размер
7,62 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6417
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее