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**。

相关推荐
‿hhh14 分钟前
学习笔记整理(部分)
java·开发语言·笔记·学习·mvc
HappRobot20 分钟前
Python 面向对象
开发语言·python
JIngJaneIL22 分钟前
基于Java + vue干洗店预约洗衣系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
dllmayday1 小时前
Qt/QML + C++ 双向数据绑定(MVVM 模式的几种常用方法(ChatGPT)
开发语言·c++·qt
han_hanker1 小时前
统一拦截异常 @RestControllerAdvice
java·开发语言·数据库
liu****1 小时前
一.脚手架介绍以及部分工具使用
开发语言·数据结构·c++·手脚架开发
资深web全栈开发1 小时前
深入理解 Google Wire:Go 语言的编译时依赖注入框架
开发语言·后端·golang
ohoy1 小时前
EasyPoi 数据脱敏
开发语言·python·excel
Hello World呀1 小时前
Java实现手机号和身份证号脱敏工具类
java·开发语言
曹牧1 小时前
Java:serialVersionUID
java·开发语言