PureBasic

DateGadget()

Синтаксис

Result = DateGadget(#Gadget , x , y , Width , Height [, Mask$ [, Date [, Flags]]])

Описание


Создает строковый Гаджет "Дата", содержащий поле ввода, предназначенное для ввода даты и/или времени. Гаджет создаётся в текущем списке Гаджетов (GadgetList).

Параметры

#Gadget Номер для идентификации нового Гаджета. В качестве этого параметра можно использовать значение #PB_Any, чтобы сгенерировать этот Номер автоматически.
x, y, Width, Height Позиция и размеры нового Гаджета.
Mask$ (дополн.) Формат, в который можно ввести дату. Описание формата этой маски смотрите в описании функции FormatDate(). Важное примечание: Гаджет не поддерживает отображение секунд, поэтому, если вы укажете "%ss" в параметре Mask$, он просто будет проигнорирован! Если вы не укажете маску или укажите пустую строку, будет выбрана маска по умолчанию. Маску можно изменить с помощью функции SetGadgetText().
Date (дополн.) Начальная дата для Гаджета. Если не указывать этот параметр или указать значение, то будет отображена текущая дата.
Flags (дополн.) Флаги, позволяющие изменить поведение Гаджета.

По умолчанию Гаджет имеет кнопку для отображения календаря, в котором пользователь может выбрать дату (см. Изображение ниже). Вы можете изменить это, указав значение #PB_Date_UpDown в параметре Flags. Это заставит Гаджет отображать кнопку вверх/вниз, которая позволяет пользователю изменять выбранную в данный момент часть Гаджета. Этот параметр доступен только в Windows.

Если вы укажете #PB_Date_Checkbox в параметре Flags, у Гаджета будет флажок, с помощью которого пользователь может установить Гаджет на "нет даты" (если флажок снят). Пока флажок не установлен, GetGadgetState() будет возвращать 0. Чтобы изменить состояние флажка, используйте SetGadgetState() с 0 (= не установленным флажком) или с любой действительной датой (= флажок установлен).

Возвращаемое значение

Возвращает не нулевое значение в случае успешного создания Гаджета, в противном случае возвращает ноль. Если в качестве параметра #Gadget использовалось значение #PB_Any, то в случае успеха, возвращаемым значением будет сгенерированный Номер Гаджета.

Комментарии

Этот Гаджет использует тот же формат даты для своих функций, что и библиотека Date. Таким образом, вы можете использовать, например FormatDate(), для отображения результатов полученных из GetGadgetState() в соответствующем формате.

Вы можете добавить 'Всплывающую мини-подсказку' к этому Гаджету с помощью функции GadgetToolTip().

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

- SetGadgetState(): Устанавливает числовое значение отображаемой даты. (в секундах от 1-го января 1970-го года)
- SetGadgetText(): Изменяет маску ввода для дат в Гаджете. Посмотреть описание формата параметра Text$ можно в FormatDate().
- GetGadgetState(): Возвращает числовое значение отображаемой даты. Если использован флаг IF #PB_Date_CheckBox и чекбокс не отмечен, возвращается 0.
- GetGadgetText(): Возвращает отображаемую дату в виде строки, точно такой как отображается Гаджетом.
- GetGadgetAttribute(): Со следующими атрибутами:
  #PB_Date_Minimum: Возвращает минимальную дату, которую можно ввести.
  #PB_Date_Maximum: Возвращает максимальную дату, которую можно ввести.
              (Примечание. Ограничение выбираемой даты не поддерживается в Linux.)

- SetGadgetAttribute(): Со следующими атрибутами:
  #PB_Date_Minimum: Устанавливает минимальную дату, которую можно ввести.
  #PB_Date_Maximum: Устанавливает максимальную дату, которую можно ввести.
              (Примечание. Ограничение выбираемой даты не поддерживается в Linux.)

Через EventType() поддерживаются следующие события:
  #PB_EventType_Change: Дата была изменена пользователем.

Этот Гаджет поддерживает функции SetGadgetColor(), и GetGadgetColor() со следующими значениями для параметра 'ColorType', чтобы окрасить раскрывающийся календарь (область редактирования не может быть окрашена):
  #PB_Gadget_BackColor      : фоновый цвет
  #PB_Gadget_FrontColor     : Цвет текста для отображения дней
  #PB_Gadget_TitleBackColor : Цвет фона названия месяца
  #PB_Gadget_TitleFrontColor: Цвет текста названия месяца
  #PB_Gadget_GrayTextColor  : Цвет текста для дней, не относящихся к текущему месяцу

Пример

If OpenWindow(0, 0, 0, 235, 250, "Гаджет Дата", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    DateGadget(0, 10, 10, 210, 25, "Date: %mm/%dd/%yyyy Time: %hh:%ii")
    Repeat
    Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf


См. также

GetGadgetState(), SetGadgetState(), GetGadgetText(), SetGadgetText(), GetGadgetAttribute(), SetGadgetAttribute(), GetGadgetColor(), SetGadgetColor(), CalendarGadget(), Date(), FormatDate()

Поддерживаемые OS

Все

<- CreateGadgetList() - Оглавление Gadget - DisableGadget()->