logo search
Литература_1 / photon_old

Создание виджетов

Создание виджета в Вашем приложении требует немного больше работы, чем создание его в PhAB. Это потому, что PhAB заботится о куче физических атрибутов для Вас, включая размеры, местоположение и прочая. Если Вы создаёте виджет в своём коде, Вы должны будете сами установить эти ресурсы. Чтобы создать виджет из своего кода, вызовите функцию PtCreateWidget(). Её синтаксис следующий:

PtWidget_t *PtCreateWidget(

PtWidgetClassRef_t *class,

PtWidget_t *parent,

unsigned n_args,

PtArg_t *args );

Её аргументами являются:

class

Тип создаваемого виджета (напр., PtButton)

parent

Родитель нового виджета. Если это Pt_DEFAULT_PARENT, новый виджет становится потомком родителя, принимаемого по умолчанию, которым является самый последний созданный виджет контейнерного класса. Если parent равно Pt_NO_PARENT, виджет не имеет родителя.

n_args

Число элементов массива args

args

Массив структур PtArg_t , который хранит Ваши установки для ресурсов виджета. Эти установки аналогичны тем, что используются для PtSetResources(); см. главу "Управление ресурсами в исходном коде приложения".

Вы можете задать принимаемого по умолчанию родителя (используемого, если аргумент parent в вызове функции PtCreateWidget() равен Pt_DEFAULT_PARENT), вызвав функцию PtSetParentWidget(). Чтобы назначить для виджета другой контейнер, вызовите функцию PtReparentWidget().

Вот несколько заметок относительно виджетов, создаваемых в исходном коде приложения: