首页| 论坛| 消息

标题:qt MDI编程的2个问题
作者:rangzh
日期:2006-12-02 22:20
内容:

1、 Qt中的MDI例子中使用QWorkspace来管理各个Child,但各个Child切换时菜单是一致的,因为各个Child都处理来自同一种Model的相同数据。如果各个Child处理的数据类型是不一样的,比如有些可以处理文本,有些则处理图像,这些Child切换时主菜单有很大变化,怎么自动地实现这种菜单的切换?qt里面做菜单切换好像很麻烦
2、 Tab MDI界面在很多软件中都得到应用,比如VS.NET中就有。Qt虽然可以使用QTabWidget替代QWorkspace来作为CentralWidget,不过要实现关闭某一个tab却比较麻烦。我尝试自定义一个TabBarEx,并用自定义TabBarEx替代QTabWidget中的tabBar,但TabBarEx中处理右键菜单的actionCloseTab时却比较麻烦,不知道交给谁(QTabWidget还是QMainWidget)来完成close的动作


#1 [XChinux 12-03 15:18]
关于Tab MDI,楼主可看看tools里带的assistant的源代码。
#2 [rangzh 12-09 11:58]
多谢版主。assistant里面的右键菜单好像是在每个Tab Page中弹出并处理的,而没有重载TabBar里面的contextMenuEvent或mouseEvent

回复 发表
主题 版块