text_selector_t

概述

image

文本选择器控件,通常用于选择日期和时间等。

XXX: 目前需要先设置options和visible_nr,再设置其它参数(在XML中也需要按此顺序)。

text_selector_t是widget_t的子类控件,widget_t的函数均适用于text_selector_t控件。

在xml中使用”text_selector”标签创建文本选择器控件。如:

  1. <text_selector options="red;green;blue;gold;orange" visible_nr="3" text="red"/>

更多用法请参考:text_selector.xml

在c代码中使用函数text_selector_create创建文本选择器控件。如:

  1. widget_t* ts = text_selector_create(win, 10, 10, 80, 150);
  2. text_selector_set_options(ts, "1:red;2:green;3:blue;4:orange;5:gold");
  3. text_selector_set_value(ts, 1);
  4. widget_use_style(ts, "dark");

完整示例请参考:text_selector demo

可用通过style来设置控件的显示风格,如字体和背景颜色等。如:

  1. <style name="dark" fg_color="#a0a0a0" text_color="black" text_align_h="center">
  2. <normal bg_color="#ffffff" mask_color="#404040" border_color="#404040"/>
  3. </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 值(当前项)改变事件。

text_selector_append_option 函数


  • 函数功能:

追加一个选项。

  • 函数原型:
  1. 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_cast 函数


  • 函数功能:

转换text_selector对象(供脚本语言使用)。

  • 函数原型:
  1. widget_t* text_selector_cast (widget_t* widget);
  • 参数说明:
参数 类型 说明
返回值 widget_t* text_selector对象。
widget widget_t* text_selector对象。

text_selector_count_options 函数


  • 函数功能:

获取选项个数。

  • 函数原型:
  1. int32_t text_selector_count_options (widget_t* widget);
  • 参数说明:
参数 类型 说明
返回值 int32_t 返回选项个数。
widget widget_t* text_selector对象。

text_selector_create 函数


  • 函数功能:

创建text_selector对象

  • 函数原型:
  1. 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 高度

text_selector_get_option 函数


  • 函数功能:

获取第index个选项。

  • 函数原型:
  1. 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_get_text 函数


  • 函数功能:

获取text_selector的文本。

  • 函数原型:
  1. char* text_selector_get_text (widget_t* widget);
  • 参数说明:
参数 类型 说明
返回值 char* 返回文本。
widget widget_t* text_selector对象。

text_selector_get_value 函数


  • 函数功能:

获取text_selector的值。

  • 函数原型:
  1. int32_t text_selector_get_value (widget_t* widget);
  • 参数说明:
参数 类型 说明
返回值 int32_t 返回值。
widget widget_t* text_selector对象。

text_selector_reset_options 函数


  • 函数功能:

重置所有选项。

  • 函数原型:
  1. ret_t text_selector_reset_options (widget_t* widget);
  • 参数说明:
参数 类型 说明
返回值 ret_t 返回RET_OK表示成功,否则表示失败。
widget widget_t* text_selector对象。

text_selector_set_options 函数


  • 函数功能:

设置选项。

  • 函数原型:
  1. ret_t text_selector_set_options (widget_t* widget, char* options);
  • 参数说明:
参数 类型 说明
返回值 ret_t 返回RET_OK表示成功,否则表示失败。
widget widget_t* text_selector对象。
options char* 选项。

text_selector_set_range_options 函数


  • 函数功能:

设置一系列的整数选项。

  • 函数原型:
  1. 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 步长。

text_selector_set_selected_index 函数


  • 函数功能:

设置第index个选项为当前选中的选项。

  • 函数原型:
  1. 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_set_text 函数


  • 函数功能:

设置text_selector的文本。

  • 函数原型:
  1. 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_set_value 函数


  • 函数功能:

设置text_selector的值。

  • 函数原型:
  1. ret_t text_selector_set_value (widget_t* widget, int32_t value);
  • 参数说明:
参数 类型 说明
返回值 ret_t 返回RET_OK表示成功,否则表示失败。
widget widget_t* text_selector对象。
value int32_t 值。

text_selector_set_visible_nr 函数


  • 函数功能:

设置可见的选项数。

  • 函数原型:
  1. 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 选项数。

options 属性


设置可选项(冒号分隔值和文本,分号分隔选项,如:1:red;2:green;3:blue)。
对于数值选项,也可以指定一个范围,用『-』分隔起始值、结束值和格式。
如:”1-7-%02d”表示1到7,格式为『02d』,格式为可选,缺省为『%d』。

  • 类型:char*
特性 是否支持
可直接读取
可直接修改
可持久化
可脚本化
可在IDE中设置
可在XML中设置
可通过widget_get_prop读取
可通过widget_set_prop修改

selected_index 属性


当前选中的选项。

  • 类型:int32_t
特性 是否支持
可直接读取
可直接修改
可持久化
可脚本化
可在IDE中设置
可在XML中设置
可通过widget_get_prop读取
可通过widget_set_prop修改

visible_nr 属性


可见的选项数量(只能是3或者5,缺省为5)。

  • 类型:uint32_t
特性 是否支持
可直接读取
可直接修改
可持久化
可脚本化
可在IDE中设置
可在XML中设置
可通过widget_get_prop读取
可通过widget_set_prop修改