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

相关推荐
Thera77715 分钟前
C++ 高性能时间轮定时器:从单例设计到 Linux timerfd 深度优化
linux·开发语言·c++
炘爚1 小时前
C语言(文件操作)
c语言·开发语言
阿蒙Amon1 小时前
C#常用类库-详解SerialPort
开发语言·c#
凸头1 小时前
CompletableFuture 与 Future 对比与实战示例
java·开发语言
wuqingshun3141591 小时前
线程安全需要保证几个基本特征
java·开发语言·jvm
Moksha2622 小时前
5G、VoNR基本概念
开发语言·5g·php
jzlhll1232 小时前
kotlin Flow first() last()总结
开发语言·前端·kotlin
W.D.小糊涂2 小时前
gpu服务器安装windows+ubuntu24.04双系统
c语言·开发语言·数据库
用头发抵命2 小时前
Vue 3 中优雅地集成 Video.js 播放器:从组件封装到功能定制
开发语言·javascript·ecmascript
似水明俊德2 小时前
02-C#.Net-反射-学习笔记
开发语言·笔记·学习·c#·.net