qt 之 QDockWidget设置不可拖动

在Qt中,可以通过设置QDockWidget的属性来禁止它被拖动。你可以使用**QDockWidget::setFeatures** 方法并传递**QDockWidget::DockWidgetMovable**作为参数来禁用拖动功能。

以下是一个简单的示例代码,展示了如何设置QDockWidget为不可拖动:

cpp 复制代码
#include <QApplication>
#include <QMainWindow>
#include <QDockWidget>
 
int main(int argc, char *argv[]) {
    QApplication app(argc, argv);
 
    QMainWindow mainWindow;
    QDockWidget *dockWidget = new QDockWidget("DockWidget", &mainWindow);
 
    // 设置dock widget为不可拖动
    dockWidget->setFeatures(QDockWidget::DockWidgetFloatable);
 
    // 添加一个小部件到dock widget作为示例
    dockWidget->setWidget(new QTextEdit("Dockable widget content", dockWidget));
 
    // 将dock widget添加到主窗口
    mainWindow.addDockWidget(Qt::LeftDockWidgetArea, dockWidget);
 
    mainWindow.show();
 
    return app.exec();
}

在这个例子中,DockWidget 将不会被拖动,但它仍然可以浮动(如果你允许浮动的话)。如果你也想禁止浮动,可以不设置**DockWidgetFloatable**。

相关推荐
半桶水专家2 小时前
go语言中的结构体嵌入详解
开发语言·后端·golang
在屏幕前出油3 小时前
二、Python面向对象编程基础——理解self
开发语言·python
阿方索3 小时前
python文件与数据格式化
开发语言·python
weixin_440730505 小时前
java结构语句学习
java·开发语言·学习
JIngJaneIL5 小时前
基于java+ vue医院管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
量子联盟5 小时前
功能完整的PHP站点导航管理系统php程序;开源免费下载
开发语言·php
仙俊红5 小时前
在 Java 中,`==` 和 `equals()` 的区别
java·开发语言·jvm
JIngJaneIL5 小时前
基于java + vue校园跑腿便利平台系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
happybasic6 小时前
python字典中字段重复性的分析~~
开发语言·python
czlczl200209256 小时前
SpringBoot自动配置AutoConfiguration原理与实践
开发语言·spring boot·后端