文本选择器控件,通常用于选择日期和时间等。
XXX: 目前需要先设置options和visible_nr,再设置其它参数(在XML中也需要按此顺序)。
text_selector_t是widget_t的子类控件,widget_t的函数均适用于text_selector_t控件。
在xml中使用"text_selector"标签创建文本选择器控件。如:
<text_selector options="red;green;blue;gold;orange" visible_nr="3" text="red"/>
更多用法请参考:text_selector.xml
在c代码中使用函数text_selector_create创建文本选择器控件。如:
widget_t* ts = text_selector_create(win, 10, 10, 80, 150);
text_selector_set_options(ts, "1:red;2:green;3:blue;4:orange;5:gold");
text_selector_set_value(ts, 1);
widget_use_style(ts, "dark");
完整示例请参考:text_selector demo
可用通过style来设置控件的显示风格,如字体和背景颜色等。如:
<style name="dark" fg_color="#a0a0a0" text_color="black" text_align_h="center">
<normal bg_color="#ffffff" mask_color="#404040" border_color="#404040"/>
</style>
更多用法请参考:theme default
函数名称 | 说明 |
---|---|
text_selector_append_option | 追加一个选项。 |
text_selector_cast | 转换text_selector对象(供脚本语言使用)。 |
text_selector_count_options | 获取选项个数。 |
text_selector_create | 创建text_selector对象 |
text_selector_get_option | 获取第index个选项。 |
text_selector_get_text | 获取text_selector的文本。 |
text_selector_get_value | 获取text_selector的值。 |
text_selector_reset_options | 重置所有选项。 |
text_selector_set_options | 设置选项。 |
text_selector_set_range_options | 设置一系列的整数选项。 |
text_selector_set_selected_index | 设置第index个选项为当前选中的选项。 |
text_selector_set_text | 设置text_selector的文本。 |
text_selector_set_value | 设置text_selector的值。 |
text_selector_set_visible_nr | 设置可见的选项数。 |
属性名称 | 类型 | 说明 |
---|---|---|
options | char* | 设置可选项(冒号分隔值和文本,分号分隔选项,如:1:red;2:green;3:blue)。 |
selected_index | int32_t | 当前选中的选项。 |
visible_nr | uint32_t | 可见的选项数量(只能是3或者5,缺省为5)。 |
事件名称 | 类型 | 说明 |
---|---|---|
EVT_VALUE_WILL_CHANGE | event_t | 值(当前项)即将改变事件。 |
EVT_VALUE_CHANGED | event_t | 值(当前项)改变事件。 |
- 函数功能:
追加一个选项。
- 函数原型:
ret_t text_selector_append_option (widget_t* widget, int32_t value, char* text);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
widget | widget_t* | text_selector对象。 |
value | int32_t | 值。 |
text | char* | 文本。 |
- 函数功能:
转换text_selector对象(供脚本语言使用)。
- 函数原型:
widget_t* text_selector_cast (widget_t* widget);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | widget_t* | text_selector对象。 |
widget | widget_t* | text_selector对象。 |
- 函数功能:
获取选项个数。
- 函数原型:
int32_t text_selector_count_options (widget_t* widget);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | int32_t | 返回选项个数。 |
widget | widget_t* | text_selector对象。 |
- 函数功能:
创建text_selector对象
- 函数原型:
widget_t* text_selector_create (widget_t* parent, xy_t x, xy_t y, wh_t w, wh_t h);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | widget_t* | 对象。 |
parent | widget_t* | 父控件 |
x | xy_t | x坐标 |
y | xy_t | y坐标 |
w | wh_t | 宽度 |
h | wh_t | 高度 |
- 函数功能:
获取第index个选项。
- 函数原型:
text_selector_option_t* text_selector_get_option (widget_t* widget, uint32_t index);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | text_selector_option_t* | 成功返回选项,失败返回NULL。 |
widget | widget_t* | text_selector对象。 |
index | uint32_t | 选项的索引。 |
- 函数功能:
获取text_selector的文本。
- 函数原型:
char* text_selector_get_text (widget_t* widget);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | char* | 返回文本。 |
widget | widget_t* | text_selector对象。 |
- 函数功能:
获取text_selector的值。
- 函数原型:
int32_t text_selector_get_value (widget_t* widget);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | int32_t | 返回值。 |
widget | widget_t* | text_selector对象。 |
- 函数功能:
重置所有选项。
- 函数原型:
ret_t text_selector_reset_options (widget_t* widget);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
widget | widget_t* | text_selector对象。 |
- 函数功能:
设置选项。
- 函数原型:
ret_t text_selector_set_options (widget_t* widget, char* options);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
widget | widget_t* | text_selector对象。 |
options | char* | 选项。 |
- 函数功能:
设置一系列的整数选项。
- 函数原型:
ret_t text_selector_set_range_options (widget_t* widget, int32_t start, uint32_t nr, int32_t step);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
widget | widget_t* | text_selector对象。 |
start | int32_t | 起始值。 |
nr | uint32_t | 个数。 |
step | int32_t | 步长。 |
- 函数功能:
设置第index个选项为当前选中的选项。
- 函数原型:
ret_t text_selector_set_selected_index (widget_t* widget, uint32_t index);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
widget | widget_t* | text_selector对象。 |
index | uint32_t | 选项的索引。 |
- 函数功能:
设置text_selector的文本。
- 函数原型:
ret_t text_selector_set_text (widget_t* widget, const char* text);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
widget | widget_t* | text_selector对象。 |
text | const char* | 文本。 |
- 函数功能:
设置text_selector的值。
- 函数原型:
ret_t text_selector_set_value (widget_t* widget, int32_t value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
widget | widget_t* | text_selector对象。 |
value | int32_t | 值。 |
- 函数功能:
设置可见的选项数。
- 函数原型:
ret_t text_selector_set_visible_nr (widget_t* widget, uint32_t visible_nr);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
widget | widget_t* | text_selector对象。 |
visible_nr | uint32_t | 选项数。 |
设置可选项(冒号分隔值和文本,分号分隔选项,如:1:red;2:green;3:blue)。
对于数值选项,也可以指定一个范围,用『-』分隔起始值和结束值,如:"1-7"表示1到7。
- 类型:char*
特性 | 是否支持 |
---|---|
可直接读取 | 是 |
可直接修改 | 否 |
可持久化 | 是 |
可脚本化 | 是 |
可在IDE中设置 | 是 |
可在XML中设置 | 是 |
可通过widget_get_prop读取 | 是 |
可通过widget_set_prop修改 | 是 |
当前选中的选项。
- 类型:int32_t
特性 | 是否支持 |
---|---|
可直接读取 | 是 |
可直接修改 | 否 |
可持久化 | 是 |
可脚本化 | 是 |
可在IDE中设置 | 是 |
可在XML中设置 | 是 |
可通过widget_get_prop读取 | 是 |
可通过widget_set_prop修改 | 是 |
可见的选项数量(只能是3或者5,缺省为5)。
- 类型:uint32_t
特性 | 是否支持 |
---|---|
可直接读取 | 是 |
可直接修改 | 否 |
可持久化 | 是 |
可脚本化 | 是 |
可在IDE中设置 | 是 |
可在XML中设置 | 是 |
可通过widget_get_prop读取 | 是 |
可通过widget_set_prop修改 | 是 |