【声明:版权所有,欢迎转载,请勿用于商业用途。  联系信箱:feixiaoxing @163.com】

前一篇说到了combox,就先看一下效果吧。

说完了combox,就谈谈今天的滑动条。滑动条,当然也可以称之为scroll bar,有时候也叫进度条。打个比方,在音频或者视频播放器中,如果我们想快速略过某些内容,这个进度条就可以用上了。

#include "ftk.h"static Ret button_quit_clicked(void* ctx, void* obj)
{ftk_quit();return RET_OK;
}static Ret scroll_bar_on_scroll(void* ctx, void* scroll_bar)
{ftk_logd("%s: value=%d\n", __func__, ftk_scroll_bar_get_value(scroll_bar));return RET_OK;
}int main(int argc, char* argv[])
{int width = 0;int height = 0;FtkWidget* win = NULL;FtkWidget* button = NULL;FtkWidget* scroll_bar = NULL;ftk_init(argc, argv);win = ftk_app_window_create();width = ftk_widget_width(win);height = ftk_widget_height(win);/*v*/scroll_bar = ftk_scroll_bar_create(win, width/8, 5, 0, height/2);ftk_scroll_bar_set_param(scroll_bar, 0, 120, 120);    ftk_scroll_bar_set_listener(scroll_bar, scroll_bar_on_scroll, NULL);scroll_bar = ftk_scroll_bar_create(win, width/4, 5, 0, height/2);ftk_scroll_bar_set_param(scroll_bar, 40, 120, 60);    ftk_scroll_bar_set_listener(scroll_bar, scroll_bar_on_scroll, NULL);scroll_bar = ftk_scroll_bar_create(win, 3*width/8, 5, 0, height/2);ftk_scroll_bar_set_param(scroll_bar, 110, 120, 30); ftk_scroll_bar_set_listener(scroll_bar, scroll_bar_on_scroll, NULL);scroll_bar = ftk_scroll_bar_create(win, width/2, 5, 0, height/2);ftk_scroll_bar_set_param(scroll_bar, 120, 120, 20);   ftk_scroll_bar_set_listener(scroll_bar, scroll_bar_on_scroll, NULL);/*h*/scroll_bar = ftk_scroll_bar_create(win, 5, height/2 + 10, width - 10, 0);ftk_scroll_bar_set_param(scroll_bar, 120, 120, 20); ftk_scroll_bar_set_listener(scroll_bar, scroll_bar_on_scroll, NULL);scroll_bar = ftk_scroll_bar_create(win, 5, height/2 + 30, width - 10, 0);ftk_scroll_bar_set_param(scroll_bar, 110, 120, 30);  ftk_scroll_bar_set_listener(scroll_bar, scroll_bar_on_scroll, NULL);scroll_bar = ftk_scroll_bar_create(win, 5, height/2 + 50, width - 10, 0);ftk_scroll_bar_set_param(scroll_bar, 40, 120, 60);   ftk_scroll_bar_set_listener(scroll_bar, scroll_bar_on_scroll, NULL);scroll_bar = ftk_scroll_bar_create(win, 5, height/2 + 80, width - 10, 0);ftk_scroll_bar_set_param(scroll_bar, 0, 120, 120);   ftk_scroll_bar_set_listener(scroll_bar, scroll_bar_on_scroll, NULL);button = ftk_button_create(win, 2*width/3, height/4, width/3-5, 50);ftk_widget_set_text(button, "quit");ftk_button_set_clicked_listener(button, button_quit_clicked, win);ftk_window_set_focus(win, button);ftk_widget_set_text(win, "scroll_bar demo");ftk_widget_show_all(win, 1);ftk_widget_set_attr(win, FTK_ATTR_QUIT_WHEN_CLOSE);ftk_run();return 0;
}

熟悉了ftk流程的同学肯定一眼就看到了进度条的相关代码了。这里面的ftk_scroll_bar_create就是它的创建函数,ftk_scroll_bar_set_param是它的属性设置函数,ftk_scroll_bar_set_listener是设置它的回调函数。如果我们滑动了这个进度条,scroll_bar_on_scroll就会被调用。通过其中的函数ftk_scroll_bar_get_value就可以得到当前的数值了,我们也可以进行进一步的处理和分析了。

老规矩,下次见效果。

ftk学习记(滑动条篇)相关推荐

  1. ftk学习记(首篇)

    [ 声明:版权全部,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 非常早之前就知道ftk了,当时主要是由于买了李先静的书,所以知道了这么一个项目.由于对这样的g ...

  2. ftk学习记(label篇)【转】

    转自:http://blog.csdn.net/feixiaoxing/article/details/25000093 版权声明:本文为博主原创文章,未经博主允许不得转载. [ 声明:版权所有,欢迎 ...

  3. ftk学习记(list篇)

    [声明:版权所有,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 在开始今天的list主题之前,先看一下icon的运行效果. 今天说的list其实和这个icon差 ...

  4. ftk学习记(脚本篇)

    [声明:版权所有,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 上一篇说到了对话框,今天就看看结果. 对话框不复杂,今天我们就来谈一谈脚本.有过android开 ...

  5. ftk学习记(button篇)

    [ 声明:版权所有,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 前面,我们说到了label,这里可以看一下label运行的效果是怎么样的. 大家可以对照上面的 ...

  6. ftk学习记(combox篇)

    [声明:版权所有,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 上一篇文章谈到了多窗口,还是按照约定看一下效果是什么样的. 如果大家细心一点,就会发现窗口中的l ...

  7. ftk学习记(waitbox篇)

    [声明:版权所有,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 前面说到了脚本,那么就看看ftk中demo与script搭配的效果是什么样的? 上面的效果图就类 ...

  8. ftk学习记(对话框篇)

    [声明:版权所有,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 前面谈到了输入法,首先看一看效果. 上面有4个输入框,大家可以分别试试,看看效果如何. 今天,我 ...

  9. ftk学习记(输入法篇)

    [声明:版权所有,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 前面说的是全屏设置,还是请大家看一下效果图. 想看全屏效果的,可以单击一下左边的button.如 ...

最新文章

  1. 基于SSM实现的图书馆管理系统
  2. stl-vector详解
  3. pybot --help
  4. svg矩形参数_SVG矩形和其他SVG形状
  5. 微型计算机杂志合订本,微型计算机(2008上半年合订本)(上下)(附光盘)
  6. 文件服务器的未分页内存
  7. Linux实时监控日志文件的swatchdog
  8. AMQ学习笔记 - 16. 确认机制的测试
  9. 免费股票量化交易软件有哪些?
  10. Python之print函数详解
  11. 树莓派输出PWM波驱动舵机
  12. JAVA空间换时间以及时间换空间的例子
  13. 推荐几个很实用的网址
  14. Vue-basic 19.单文件组件
  15. 强收红包漫天要价偷转黑车……滴滴网约车被指太任性
  16. Linux开机自启动脚本
  17. UI设计的色彩搭配及原则(转载)
  18. 《非暴力沟通两性篇》读书笔记
  19. 你误把饥渴当成了爱情
  20. 苏州公交实时查询api 根据线路编码查询详细信息

热门文章

  1. thinkphp3.2 cli模式的正确使用方法
  2. PostgreSQL 可靠性和一致性 代码分析
  3. Javascript学习历程之事件
  4. 2019-2-15 日记
  5. 从word得到表格数据插入数据库(6位行业代码)
  6. servlet,session对象的生命周期
  7. day10作用域与闭包
  8. Ural 1297 Palindrome(后缀数组+最长回文子串)
  9. MyEclipse中将项目的编码从默认GBK改变为默认UTF-8
  10. C++_选择结构_循环结构_for循环_敲桌子案例_嵌套循环_乘法口诀案例_跳转语句break---C++语言工作笔记018