Дескрипторы и Номера
Номера (Gadget#, Window#...)
Все созданные объекты идентифицируются условным Номером (который не является дескриптором (ID) объекта, как мы увидим далее). В этом руководстве такие Номера обозначены как #Number (например, каждый созданный Гаджет имеет Номер Гаджета #Gadget).
Значение, что вы присваиваете им, необязательно должны быть константами, но они должны быть уникальны для всех объектов в вашей программе (изображение может получить тот же Номер, что и Гаджет, так как это различные типы объектов). Эти Номера используются, чтобы позднее получить доступ к этим объектам в программе.
Например, эти функции обработки событий возвращают Номера объектов:EventGadget() EventMenu() EventWindow()
Дескрипторы (ID)
Все объекты также получают уникальный Номер, назначенный им системой. Эти идентификаторы называются дескрипторы. Иногда функция PureBasic требует не Номер в качестве аргумента, а дескриптор. В этом руководстве такие вещи обозначаются ID.Пример
ImageGadget(#Gadget, x, y, Width, Height, ImageID [, Flags]) ; #Gadget должен быть Номер, который вы хотите присвоить Гаджету ; ImageID должен быть дескриптор изображения.
Чтобы получить дескриптор объекта предусмотрены специальные функции: Также большинство функций, создающих эти объекты возвращают дескриптор в качестве результата, если они отработали успешно. Кроме случая, когда для создания объекта использовалось значение #PB_Any. Если использовалось значение #PB_Any, эти команды возвращают Номер объекта, который был назначен для него PB, а не дескриптор (ID).Пример
GadgetHandle = ImageGadget(...)