===== CreateDateInputVA ===== ==== Синтаксис ==== GUI* CreateDateInputVA( int, ... ); ==== Описание ==== Функция создает окно для ввода даты ==== Параметры ==== * **int** - 0 == Переменные аргументы: == * **VAR_BOOK** - указатель на BOOK к которой необходимо привязать GUI * **VAR_HEADER_TEXT** - TEXTID текста, используемого в качестве заголовка окна * **VAR_DATEINP_DATE** - дата в окне * **VAR_DATEINP_DATEFORMAT** - формат даты ==== Возвращаемое значение ==== Возвращает указатель на созданный GUI ==== Пример ==== #define DI_GET_YEAR(x) ((unsigned int)x&0xFFFF) #define DI_GET_MONTH(x) (((unsigned int)x>>16)&0xFF) #define DI_GET_DAY(x) ((unsigned int)x>>24) void onDateInputClose(BOOK * book, GUI *) { FreeBook(book); } void onDateInputOK(BOOK * book, GUI * gui) { char buf[11]; unsigned int date = DateInput_GetDateInt(gui); sprintf(buf, "%02d.%02d.%04d", DI_GET_DAY(date), DI_GET_MONTH(date), DI_GET_YEAR(date)); MessageBox(EMPTY_TEXTID, TextID_Create(buf, ENC_LAT1, TEXTID_ANY_LEN), NOIMAGE, 1, 5000, 0); } void CreateDateInput(void) { DATETIME dt; char format; BOOK * DateInput = new BOOK; CreateBook(DateInput, 0, 0, "DateInputTest", -1, 0); REQUEST_DATEANDTIME_GET(SYNC, &dt); REQUEST_DATEFORMAT_GET(SYNC, &format); GUI * Date = CreateDateInputVA(0, VAR_BOOK(DateInput), VAR_HEADER_TEXT(STR("Date")), VAR_DATEINP_DATEFORMAT((int)format), VAR_DATEINP_DATE(&dt.date), 0); GUIObject_SoftKeys_SetAction(Date, ACTION_ACCEPT, onDateInputOK); GUIObject_SoftKeys_SetAction(Date, ACTION_BACK, onDateInputClose); GUIObject_SoftKeys_SetAction(Date, ACTION_LONG_BACK, onDateInputClose); } ==== См.также ==== [[REQUEST_DATEANDTIME_GET]], [[REQUEST_DATEFORMAT_GET]], [[DateInput_GetDateInt]]