• 7324阅读
  • 7回复

【提问】如何实现将子窗口显示在父窗口中? [复制链接]

上一主题 下一主题
离线wrduan
 
只看楼主 倒序阅读 楼主  发表于: 2006-03-01
我建了widget 的窗口 form1 form2 ,两个窗口,在form1窗口中有一个 Button, 我希望点击form1中的button后在form1 的窗口区里显示 form2 的内容,在窗口form2上有一个” 返回“的button ,希望点击后 从form2 返回到form1.不知到我这样描述是不是清楚。希望得到指点。
谢谢!!
[ 此贴被XChinux在2006-03-01 12:48重新编辑 ]
离线nanhu_007

只看该作者 1楼 发表于: 2006-03-02
form1为QWidget,form2为QDialog就可以了,点击form2的返回,form2就hide了,就显示form1了。
离线wrduan
只看该作者 2楼 发表于: 2006-03-06
谢谢楼上的回答。但是,可能我的描述不是很准确,或是其它,你这样的方法好像不行。我是希望在Form1的边框里显示form2的内容,类似 Table的多页操作,只是现在点击的不是 Table的标签,而是当前页面的一个button 按钮。
离线XChinux

只看该作者 3楼 发表于: 2006-03-07
就是类似多文档窗口(MDI)样式的么?
可参考一下帖子中的那个程序的源码。
http://www.qtcn.org/bbs/read.php?tid=3230
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线sinl

只看该作者 4楼 发表于: 2006-04-04
布局好了以后,show(),hide()不就完了嘛
离线mhli108
只看该作者 5楼 发表于: 2006-06-27
回复:
只要在FORM1中定义form2对象 的时候,把构造函数的parent参数设为this.
form2* f2=new form2(this);
即可实现!
离线XChinux

只看该作者 6楼 发表于: 2006-06-27
注意子部件要从QWidget继承,不要使用QMainWindow和QDialog,这两个是不行的。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线twzhappy

只看该作者 7楼 发表于: 2006-07-07
我想问一下XChinux先生,为什么QMainWindow和QDialog不行呢?
我前段时间在QMainWindow定义了一个QAction a,定义了一个QDialog b,然后
connect(a, SIGNAL(triggered()),b, SLOT(show()));
编译后生成可执行程序,没有问题,可是在执行程序时,提示"段错误".
快速回复
限100 字节
 
上一个 下一个