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

Вызов PtSetResources()

Как только Вы установили список аргументов, всё готово к тому, чтобы устанавливать ресурсы. Помните, что PtSetArg() не устанавливает ресурсы; эта функция только устанавливает список аргументов.

Вы можете использовать PtSetResources(), чтобы устанавливать новые значения ресурсов:

int PtSetResources(PtWidget_t *widget, int n_args, PtArg_t *args);

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

Вы можете также установить ресурсы передачей списка аргументов в функцию PtCreateWidget(). Правила задания значений в элементах списка аргументов те же самые. Для получения более полной информации см. раздел "Создание виджетов" в главе "Управление виджетами в коде приложения".

Например, Вы можете установить ресурсы виджета типа "combo box", используя список аргументов, созданный выше. Вызовите функцию PtSetResources() следующим образом:

PtSetResources(ABW_shapes_cbox, 5, args);

В ответ на изменение своего ресурса виджет может перерисовать себя. Вызов PtSetResources() послужит толчком к этому изменению. Любые изменения, появившиеся в виджете, не будут, однако, иметь эффекта до тех пор, пока не произойдёт восстановление управления в петлю обработки событий. Таким образом, если функция PtSetResources() была вызвана из функции ответной реакции или из функции обработки события, изменения в виджете не будут видны до тех пор, пока не будут выполнены все ответные реакции из списка ответных реакций и все обработчики событий.