RTGUI 隱藏了按鈕,依然對該區的事件有反應??
是不是不Destory 的話不行??還是在自己的Onbutton function 處理...
另外, rtgui_widget_show 可以立刻更新,rtgui_widget_hide 卻不能,我是不是少了甚麼沒有做?
現在用rtgui_view_show...
原來被 rtgui_workbench_show_view 中的
/* already shown */
if (workbench->current_view == view) return;
給走了... hide有些问题,已经修复了,见svn版本。
后面的没看得太明白。 static void go_view_chk(struct rtgui_widget* widget, rtgui_event_t *event){
rt_kprintf("Press chk\n");
if (RTGUI_WIDGET_IS_HIDE(RTGUI_WIDGET(cal_btn))){
rtgui_widget_show(RTGUI_WIDGET(cal_btn));
rtgui_widget_update(RTGUI_WIDGET(cal_btn));
}else{
rtgui_widget_hide(RTGUI_WIDGET(cal_btn));
rtgui_view_show(view, RT_FALSE);
}
}
其實用rtgui_widget_show / rtgui_widget_hide 的時候有更新View/Container/Workbench 的嗎?
我現在
用rtgui_widget_show 命令後用 rtgui_widget_update 去更新自己
但用在rtgui_widget_hide 的時候 rtgui_widget_update 只會更新自己,不會對上層更新
所以只有以rtgui_view_show 去 重繪 view
我這麼對嗎?? 感謝ffxz
但
if (RTGUI_WIDGET_IS_HIDE(widget)) RT_FALSE;
少了return
if (RTGUI_WIDGET_IS_HIDE(widget)) return RT_FALSE; 多谢指出,已经更新了,另外widget和hide相关的一些问题也都查了一遍,并进行修正。
页:
[1]