qt 无框dockwidget_QT QDockWidget的使用

本文介绍了Qt中的QDockWidget,它是实现可停靠用户界面的关键组件。QDockWidget允许用户在QMainWindow的四个停靠区域之间移动,也可以变为独立的浮动窗口。此外,文章展示了如何设置QDockWidget的允许停靠区域,创建包含多种控件的工具栏,并讨论了如何保存和恢复窗口及工具栏的状态。
摘要由CSDN通过智能技术生成

可停靠物件是能停靠在QMainWindow边上或者悬浮为一个独立窗口的物件。QMainWindow提供四个可停靠物件区域:中央物件的上面,下面,

左边,右边各一个。像Microsoft Visual

Studio和Qt语言家等程序大量使用了可停靠物件以提供一个非常灵活的用户界面。在Qt中,可停靠物件是QDockWidget的实现。

图6.13 一个带有一个可停靠物件的QMainWindow

每个可停靠物件都有自己的标题栏,甚至在它们停靠住也一样。用户可以拖动可停靠物件的标题栏把它从一个停靠区域移动到另一个停靠区域。它们还能通过把可停

靠窗口拖离所有停靠区域使它从一个区域脱离出来并成为一个悬浮起来成为一个独立的窗口。自由浮动的可停靠窗口总是在他们 主窗口的上面。用户可以点击物件

标题栏上的关闭按钮来关闭一个QDockWidget。所有这些功能的组合可通过调用QDockWidget::setFeatures()来禁止。

在Qt的早期版本中,工具栏被当然可停靠物件对待,并与之共享相同的停靠区域。从Qt 4

开始,工具栏占据中央物件周围的它们自己的区域(如图6.14所示),并且它们还不能被脱离开。如果需要一个浮动的工具栏,我们可以简单的把它放到一个

QDockWindow里面即可。

图6.14 QMainWindow的停靠区域和工具栏区域

用虚线表示的边角能属于两个相邻停靠区域中任何一个。例如,我们可以调用QMainWindow::setCorner(Qt::TopLeftCorner,

Qt:: LeftDockWidgetArea)让左上角属于左侧可停靠区域。

下面的代码片断展示了如何把一个已存在的物件(这里是一个QTreeWidget)包装进QDockWidget中并把它插入到右侧停靠区域。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值