Qt-即使QMainWindow太小,也允许停靠
Qt - allow docking even if QMainWindow too small
我之前的问题没有答案,所以让我重新表述一下:
是否可以让QMainWindow
接受QDockWidget
的对接,而不管小部件和窗口的大小?
目前,如果窗口太小,无法容纳最小尺寸的QDockWidget
,则无法停靠。如果主窗口能够增长以适应小部件,那将是理想的选择。
提前感谢!
上次我对你的问题有一些想法,但我认为我的解决方案并不理想。所以,如果你还在挣扎,我会尽力回答。
实际上,获取鼠标输入事件并调整主窗口的大小并没有任何问题。问题是,当您从主窗口外部拖动QDockWidget
时,后一个窗口会失去焦点,无法处理该事件。
我的想法是在QDockWidget
上安装一个事件过滤器。在它的实现中,您应该跟踪QDockWidget
的移动和全局光标位置(QCursor::pos()
)。如果光标当前在主窗口内,并且QDockWidget
正在移动,则表示您已将QDockWidget
拖动到主窗口上,如果其大小小于某个最小大小,则应调整其大小。
相关文章:
- 代码厨师问题伊什瓦拉(应许之地)
- 在应用程序启动时停靠 QDockWidget?
- 存储具有许多变体的类的默认值的推荐方法是什么?
- Win32 检测窗口是否最大化/停靠到半屏(Win键 + 左/右)
- 许多子文件夹的制造商
- 获取 QToolbar 的当前停靠区域的简单方法
- 获取可停靠窗格C++的句柄时遇到问题
- MFC停靠对话框在外部/不在CMainFrame中
- 如何获取QDockWidget在其当前停靠区中的位置
- Qt-即使QMainWindow太小,也允许停靠
- 使用 CMFCPropertyGrid 捕获可停靠窗格上的丢失焦点事件
- 如何知道QDockWidget是否通过按钮或拖动它取消停靠
- 最小化到停靠后恢复Qt应用程序,使用OS X上的扩展坞快捷方式
- 如何使CMDIChildWnd在MFC中可停靠
- 停靠区拆分器的Qt样式表
- 选项卡化所有停靠窗口小部件
- 检测笔记本电脑停靠或未停靠Windows 7+
- 同一实例的停靠图标两次,非 GUI 进程错误地标记"not responding"
- 在CView而不是CMainFrame中创建停靠窗格
- 停靠CControlBar派生的窗口