• 7066阅读
  • 6回复

局部界面切换的问题 [复制链接]

上一主题 下一主题
离线feiyinziiu
 
只看楼主 倒序阅读 楼主  发表于: 2010-02-28
底层是一个widget。

整个界面是分为两部分,左边半部分是一列按钮,右半部分需要根据左边的按钮来进行相应的动作


比如,点击设置,那么右边就会出现对应的设置界面。

点击启动,右边就会出现相应的启动界面。


各位,不知道这种情况怎么实现呢?

谢谢
【职业】嵌入式开发
【所用操作系统】OS:fedora 9
【内核版本】linux-2.6.25
【交叉编译】arm-linux-gcc 4.3.2
【gcc】gcc 4.0.0


空气,阳光,生命终将会有尽头,所以我拼命的忙,所以我忘记死亡。
离线pinkfrog
只看该作者 1楼 发表于: 2010-02-28
左边搞一个QButtonGroup,connect(buttonGroup, SIGNAL(buttonClicked(int)), this, SIGNAL(buttonClicked(int)));
右边的窗体使用QStackedWidget,把要显示的widget添加到stacked widget里面
在底层widget连接信号:connect(leftWidget, SIGNAL(buttonClicked(int)), rightWidget, SLOT(setCurrentIndex(int)));

代码可能有误,思路大致如此
离线ooyoyo
只看该作者 2楼 发表于: 2010-02-28
就是这个思路,我是用QT2做的类似的界面
离线feiyinziiu
只看该作者 3楼 发表于: 2010-02-28
引用第2楼ooyoyo于2010-02-28 17:20发表的  :
就是这个思路,我是用QT2做的类似的界面



哦??

LS可否给我指点指点,我QQ:46231244


今天下午试了下,那个QWidgetStack类。

也就是我没点击一个按钮,就是用一次raiseWidget()函数用以显示一个widget


但是我有个疑问,如果这么做的话,需要使用信号与插槽

插槽的内容也基本就是   wdget->raiseWidget(1);

请问下,这个信号与插槽应该怎么写呢?


谢谢
【职业】嵌入式开发
【所用操作系统】OS:fedora 9
【内核版本】linux-2.6.25
【交叉编译】arm-linux-gcc 4.3.2
【gcc】gcc 4.0.0


空气,阳光,生命终将会有尽头,所以我拼命的忙,所以我忘记死亡。
离线feiyinziiu
只看该作者 4楼 发表于: 2010-03-02
。。。

咋没人解决呢?
【职业】嵌入式开发
【所用操作系统】OS:fedora 9
【内核版本】linux-2.6.25
【交叉编译】arm-linux-gcc 4.3.2
【gcc】gcc 4.0.0


空气,阳光,生命终将会有尽头,所以我拼命的忙,所以我忘记死亡。
离线burning423

只看该作者 5楼 发表于: 2010-03-02
左边可以一个QListWidget,右边可以一个QStackedWidget,这样就可以实现你要的功能了。具体的可以参考C++ GUI Programmingwith QT4一书中的Chapter 6中的Stacked Layouts。


希望有用
离线worthing

只看该作者 6楼 发表于: 2010-06-03
我也想问,如果使用QWidgetStack是不是初始化时就全部把所有的窗口都new出来,再通过raiseWidget来把窗口显示出来,这样是不是太占用内存阿? 但是如果各个界面之间如果有信号联系,还只能这么做??
快速回复
限100 字节
 
上一个 下一个