Приложения
Приложение А. Функции, константы и структуры RDS
А.5. Сервисные функции и макросы RDS
А.5.28. Вспомогательный объект для работы с модальными окнами
А.5.28.12. Команда RDS_FORMVAL_AUXLISTITEM – номер варианта выпадающего списка в двойном поле ввода со списком
Команда RDS_FORMVAL_AUXLISTITEM устанавливает или возвращает номер варианта, выбранного в выпадающем списке двойного поля ввода типа RDS_FORMCTRL_LISTANDEDIT.
Вызов команды для установки
int iCtrlId= … // Идентификатор поля ввода int iItemNum= … // Номер выбранного пункта rdsSetObjectInt(Win,iCtrlId,RDS_FORMVAL_AUXLISTITEM,iItemNum);
или
int iCtrlId= … // Идентификатор поля ввода double dItemNum= … // Номер выбранного пункта rdsSetObjectDouble(Win,iCtrlId,RDS_FORMVAL_AUXLISTITEM,dItemNum);
или
int iCtrlId= … // Идентификатор поля ввода RDSCSTR ItemNum= … // Номер выбранного пункта в виде строки (UTF8) rdsSetObjectStrA(Win,iCtrlId,RDS_FORMVAL_AUXLISTITEM,sItemNum);
или
int iCtrlId= … // Идентификатор поля ввода RDSWCSTR ItemNum= … // Номер выбранного пункта в виде строки (UTF16) rdsSetObjectStrW(Win,iCtrlId,RDS_FORMVAL_AUXLISTITEM,sItemNum);
или (через функцию-псевдоним)
int iCtrlId= … // Идентификатор поля ввода RDSXCSTR ItemNum= … // Номер выбранного пункта в виде строки (кодировка по умолчанию) rdsSetObjectStr(Win,iCtrlId,RDS_FORMVAL_AUXLISTITEM,sItemNum);
Вызов команды для чтения
int iCtrlId= … // Идентификатор поля ввода int iItemNum=rdsGetObjectInt(Win,iCtrlId,RDS_FORMVAL_AUXLISTITEM);
или
int iCtrlId= … // Идентификатор поля ввода double dItemNum=rdsGetObjectDouble(Win,iCtrlId,RDS_FORMVAL_AUXLISTITEM);
Параметры и результат
- Win (RDS_HOBJECT)
- Идентификатор вспомогательного объекта для работы с модальным окном, ранее созданного функцией rdsFORMCreate.
- iCtrlId (int)
- Целый идентификатор поля ввода, присвоенный ему при вызове функции rdsFORMAddEdit.
- iItemNum (int)
- Целый номер выбранного в выпадающем списке пункта (пункты нумеруются начиная с нуля). Значение −1 указывает на то, что в списке не выбран ни один пункт.
- dItemNum (double)
- Номер выбранного в выпадающем списке пункта (пункты нумеруются начиная с нуля) в виде вещественного числа. Значение −1 указывает на то, что в списке не выбран ни один пункт.
- sItemNum (RDSCSTR, RDSWCSTR, RDSXCSTR)
- Указатель на строку, в которой записан номер выбранного в выпадающем списке пункта (пункты нумеруются начиная с нуля). Строка «−1» указывает на то, что в списке не выбран ни один пункт.
Примечания
Эта команда управляет номером пункта, выбранного в выпадающем списке в составе двойного поля ввода типа RDS_FORMCTRL_LISTANDEDIT.
Для передачи команды полю ввода можно использовать как целые функции rdsSetObjectInt и rdsGetObjectInt, так и вещественные rdsSetObjectDouble и rdsGetObjectDouble. Поскольку номер пункта – целое число, чаще всего используются именно целые функции. Для установки номера выбранного пункта можно также использовать строковую функцию rdsSetObjectStr, при этом строка будет преобразована в целое число по правилам функции rdsAtoI. Чтение номера выбранного пункта в виде строки не предусмотрено.
См. также
RDS_FORMCTRL_LISTANDEDIT, rdsFORMCreate, rdsFORMAddEdit, rdsSetObjectInt, rdsGetObjectInt, rdsSetObjectDouble, rdsGetObjectDouble, rdsSetObjectStr.