您的位置:首页 > 编程语言 > Qt开发

QT子窗口及停靠实现

2015-11-27 18:08 519 查看
Demo的效果





头文件中的变量声明

//退出动作
QAction* exit;
//菜单栏菜单
QMenu* filemenu;
QMenu* actiona;
//在状态栏的标签控件
QLabel* label;
//两个停靠窗口
QDockWidget *dockwidget;
QDockWidget *dockwidget_textbox;


CPP源文件中的对象定义

//创建+初始化按钮,将要放到第一个窗口内
QPushButton *button=new QPushButton(tr("Exit"),this);
QObject::connect(button,SIGNAL(clicked()),this,SLOT(close()));

//创建+初始化,放到第二个窗口
QTextEdit * textbox=new QTextEdit;

//创建两个停靠窗口对象,停靠在this窗口
dockwidget=new QDockWidget(this);
dockwidget_textbox=new QDockWidget(this);


设置停靠窗口的停靠边允许,内部空间和窗口标题

//允许停靠到四个边的dockwidget停靠窗口
dockwidget->setWindowTitle(tr("dockwidget_button"));
dockwidget->setAllowedAreas(Qt::AllDockWidgetAreas);
dockwidget->setWidget(button);
//允许停靠到左和下边的停靠窗口
dockwidget_textbox->setWindowTitle(tr("dockwidget_textbox"));
dockwidget_textbox->setAllowedAreas(Qt::LeftDockWidgetArea|Qt::BottomDockWidgetArea);
dockwidget_textbox->setWidget(textbox);


初始化时窗口的配置和动作对其实现显示与隐藏

//初始化把停靠窗口显示到左边和底边上
this->addDockWidget(Qt::LeftDockWidgetArea,dockwidget);
this->addDockWidget(Qt::BottomDockWidgetArea,dockwidget_textbox);
//设置菜单栏动作使其控制停靠窗口的显示与隐藏
this->actiona->addAction(dockwidget_textbox->toggleViewAction());
this->actiona->addAction(dockwidget->toggleViewAction());


demo的源码:http://pan.baidu.com/s/1jGAm1T0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: