Qt入门(14)——父窗口部件和子窗口部件
这个例子演示了如何创建一个父窗口部件和子窗口部件。
我们下面使用一个单一的父窗口部件和一个独立的子窗口部件编写界面。
#include <qvbox.h>
我们添加了一个头文件qvbox.h用来获得我们要使用的布局类。
QVBox box;
这里我们简单地创建了一个垂直的盒子容器。QVBox把它的子窗口部件排成一个垂直的行,一个在其它的上面,根据每一个子窗口部件的QWidget::sizePolicy()来安排空间。
box.resize( 200, 120 );
我们它的高设置为120像素,宽为200像素。
QPushButton quit( "Quit", &box );
子窗口部件产生了。
QPushButton通过一个文本(“text”)和一个父窗口部件(box)生成的。子窗口部件总是放在它的父窗口部件的最顶端。当它被显示的时候,它被父窗口部件的边界挡住了一部分。
父窗口部件,QVBox,自动地把这个子窗口部件添加到它的盒子中央。因为没有其它的东西被添加了,这个按钮就获得了父窗口部件的所有空间。
box.show();
当父窗口部件被显示的时候,它会调用所有子窗口部件的显示函数(除非在这些子窗口部件中你已经明确地使用QWidget::hide())。
这个按钮不再充满整个窗口部件。相反,它获得了一个“自然的”大小。这是因为现在的这个新的顶层窗口,使用了按钮的大小提示和大小变化策略来设置这个按钮的大小和位置。(请看QWidget::sizeHint()和QWidget::setSizePolicy()来获得关于这几个函数的更详细的信息。)
#include <qapplication.h>
#include <qpushbutton.h>
#include <qfont.h>
#include <qvbox.h> int main( int argc, char **argv )
{
QApplication a( argc, argv ); QVBox box;
box.resize( 200, 120 ); QPushButton quit( "Quit", &box );
quit.setFont( QFont( "Times", 18, QFont::Bold ) ); QObject::connect( &quit, SIGNAL(clicked()), &a, SLOT(quit()) ); a.setMainWidget( &box );
box.show(); return a.exec();
}
Qt入门(14)——父窗口部件和子窗口部件的更多相关文章
- 父窗口调用iframe子窗口方法
一.父窗口调用iframe子窗口方法 1.HTML语法:<iframe name="myFrame" src="child.html"></i ...
- C#在父窗口中调用子窗口的过程(无法访问已释放的对象)异常,不存在从对象类型System.Windows.Forms.DateTimePicker到已知的托管提供程序本机类型的映射。
一:C#在父窗口中调用子窗口的过程(无法访问已释放的对象)异常 其实,这个问题与C#的垃圾回收有关.垃圾回收器管 理所有的托管对象,所有需要托管数据的.NET语言(包括 C#)都受运行库的 垃圾回收器 ...
- (转)C#在父窗口中调用子窗口的过程(无法访问已释放的对象)
C#在父窗口中调用子窗口的过程: 1. 创建子窗口对象 2. 显示子窗口对象 笔者的程序中,主窗体MainFrm通过菜单调用子窗口ChildFrm.在窗体中定义了子窗口对象,然后在菜单项点击事件中 ...
- 项目总结03:window.open()方法用于子窗口数据回调至父窗口,即子窗口操作父窗口
window.open()方法用于子窗口数据回调至父窗口,即子窗口操作父窗口 项目中经常遇到一个业务逻辑:在A窗口中打开B窗口,在B窗口中操作完以后关闭B窗口,同时自动刷新A窗口(或局部更新A窗口)( ...
- C#中关闭子窗口而不释放子窗口对象的方法
1 在主窗口中实例化子窗口 在主窗口中实例化子窗口,而不是在按钮中实例化子窗口对象. Form2 f2 = new Form2(); 2 通过按钮来显示主窗口 在按钮中需要实现的是窗口的显示 priv ...
- C#关闭子窗口而不释放子窗口对象的问题解决
在网上找来一些方式,感觉还都不错,下面给出方式: 在线扫描相机的调试过程中,需要开辟调试界面来进行位置的配置.调试结束后,一种常用的方式是将调试参数保存并在下次启动时加载.另一种简单方式是直接使用该参 ...
- PyQt(Python+Qt)学习随笔:在父窗口中弹出子窗口无法显现的问题
在学习和测试PyQt相关部件功能的时候,老猿经常是不同的窗口新建一个类,再新建一个Application来使用这个窗口类进行测试. 为了减少应用框架代码的重复开发,老猿决定采用主窗口叠加测试窗口的模式 ...
- 父窗口和iframe子窗口之间相互传递参数和调用函数或方法
1.父窗口向子窗口传递参数: 可以在url中添加参数:2.html?a=1&b=2&c=3 然后在子页面上可用js解析,提供一个函数: function getQueryStr(sAr ...
- iframe窗口嵌套,子窗口跳转重叠在父窗口的问题
window.top //最顶层窗口 window.self //当前窗口 window.parent //父级窗口 "window.location.href"."lo ...
随机推荐
- 【python之路8】python基本数据类型(二)
基本数据类型 4.列表(list) 创建列表 name_list = ['zhao','qian','sun','li'] 基本操作 索引 print(name_list[0]) #返回zhao pr ...
- Rouh set 入门知识3(上下近似集,正负域,边界域)
在RS中,引入两个概念:一个是下近似集,另一个是上近似集.下近似集是指当一个集合不能利用有效的等价关系被恰当的分类是时,则可通过另外的集合来达到这个集合的近似.形式上,设X⊆U是任一子集,R是U上的等 ...
- native跟volatile
native是告知编译器 该方法是其他语言实现的 比如C 呵呵 private native void CoutSea();没有方法实现部分的 volatile是Java语言的关键字,用在变量的声明中 ...
- eclipse中修改内存
- Codeforces 474F - Ant colony
注意到每个区间生存下来的蚂蚁的长度等于区间的gcd 于是可以先预处理出区间的gcd 然后二分查找就好了 预处理gcd我这里用的是倍增法 总的时间复杂度O(NlogN) /* Cf 271F 倍增求区间 ...
- Android的进程和线程(转)
进程和线程 当一个应用程序第一次启动的时候,Android会启动一个Linux进程和一个主线程(即UI线程:主要负责处理用户的按键事件.触屏事件及屏幕绘图事件等).默认情况下,所有该程序的组件都将在该 ...
- js编译和执行顺序
JS是一段一段执行的(以<script>标签来分割),执行每一段之前,都有一个“预编译”,预编译干的活是:声明所有var变量(初始为undefined),解析定义式函数语句. 还有个关于 ...
- CentOS7开机启动管理systemd简介及使用
systemd提供更优秀的框架以表示系统服务间的依赖关系实现系统初始化时服务的并行启动,同时达到降低Shell的系统开销的效果systemd的目标是:尽可能启动更少进程:尽可能将更多进程并行启动.sy ...
- 用script实现内容显示,并使用json传输数据
今天做一个项目,要求是div内为空 所有代码都写在<script>里面,<script>里面的文本用json传输.这个对我一个刚出校门,用div写了三年的页面的人来说真的好难, ...
- 利用WebRequest类上传文件
说明:1.WebRequest类是一个抽象类,所以上传类实际使用的是其子类 2.打开Fiddler软件,监视正常网页的文件上传,可以看到http协议的请求和响应信息,简略说明 (第一行:请求说明 PO ...