marrylilili 发表于 2012-3-5 15:32:44

如何改变RTGUI进度条的形状

各位老大!!!
通过"rtgui_progressbar_create"制作了个进度条。
1、发现生成的进度条的是个直角的矩形条,如何改变它的形状?
2、进度条背景的矩形条是否可以让他消失?我想要的效果是:进度条随着数值的改变而改变,但是没有灰色的进度条的背景。
3、是否可以用一个填充矩形的函数做一个进度条呢?随着数值的改变,填充矩形函数的高度数值在改变?要如何才能实现?

ffxz 发表于 2012-3-5 19:59:24

重载RTGUI_EVENT_PAINT事件

marrylilili 发表于 2012-3-6 09:06:23

回复【1楼】ffxz
-----------------------------------------------------------------------

谢谢ffxz老大的解答!!
ffxz老大,由于刚刚接触RTGUI,要如何重载RTGUI_EVENT_PAINT的事件?
rtgui_widget_set_event_handler(RTGUI_WIDGET(progressbar_vbar), rtgui_progressbar_vbar_event_handler);
static rt_bool_t rtgui_progressbar_vbar_event_handler(struct rtgui_widget* widget,struct rtgui_event* event)
{
        struct rtgui_progressbar* bar = (struct rtgui_progressbar*)widget;

        if (event->type == RTGUI_EVENT_PAINT)
        {
       
       
        }

        return rtgui_progressbar__event_handler(widget, event);
}
是要用以上的函数吗?但是if语句里边要如何操作呀???

还有一个问题,如何改变进度条的填充颜色?是否是通过改变控件的前景色?RTGUI_WIDGET_FOREGROUND(RTGUI_WIDGET(progressbar_vbar)) = green;为什么无论怎么改都是蓝色的呢??

pupu 发表于 2012-4-1 09:58:11

同问啊{:smile:}{:smile:}{:smile:}
页: [1]
查看完整版本: 如何改变RTGUI进度条的形状