找回密码
 立即注册
查看: 2463|回复: 0

Tizen设备Progressbar与自定义单位格式

[复制链接]
发表于 2015-9-21 20:28:41 | 显示全部楼层 |阅读模式
这个代码片段展示了如何添加自定义单元格式基本progressbar小部件。
  1. //units label format callback
  2. static char *_progress_format_cb(double val) {
  3.         static char buffer[15];
  4.         int items = val * 100;
  5.         if (snprintf(buffer, 15, "%i items sent", items) > 0) {
  6.                 return strdup(buffer);
  7.         }
  8.         return NULL;
  9. }

  10. //free unit format string
  11. static void _progress_format_free(char *str) {
  12.         free(str);
  13. }

  14. // update progressbar, 1% for each call (for demo purposes)
  15. static Eina_Bool progressbar_value_set(void *data) {
  16.         Evas_Object *progressbar = data;
  17.         double progress = elm_progressbar_value_get(progressbar);
  18.         if (progress < 1.0) {
  19.                 progress += 0.01;
  20.                 elm_progressbar_value_set(progressbar, progress);
  21.                 return ECORE_CALLBACK_RENEW;
  22.         }
  23.         return ECORE_CALLBACK_CANCEL;
  24. }

  25. static void progressbar_test(Evas_Object *parent) {
  26.         // create a progressbar
  27.         Evas_Object *progressbar = elm_progressbar_add(parent);
  28.         elm_win_resize_object_add(parent, progressbar);

  29.         //progressbar setup
  30.         elm_progressbar_horizontal_set(progressbar, EINA_FALSE);
  31.         elm_object_style_set(progressbar, "progressbar");

  32.         //set units label function
  33.         elm_progressbar_unit_format_function_set(progressbar, _progress_format_cb, _progress_format_free);

  34.         evas_object_show(progressbar);

  35.         // add a timer to change progressbar values (demo)
  36.         ecore_timer_add(0.1, progressbar_value_set, progressbar);
  37. }
复制代码
欢迎来到泰泽网:http://www.tizennet.com/ 泰泽论坛:http://bbs.tizennet.com/ 好没有内涵哦,快到设置中更改这个无聊的签名吧!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|泰泽应用|泰泽论坛|泰泽网|小黑屋|Archiver|手机版|泰泽邮箱|泰泽网 ( 蜀ICP备13024062号-1 )

GMT+8, 2024-11-24 02:53 , Processed in 0.046701 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表