Qt布局管理停靠窗口QDockWidget类

setText() 方法

作用:设置控件(如 QLabel、QPushButton、QLineEdit 等)显示的文本内容

功能:将指定的字符串设置为控件的可视文本

tr() 函数

作用:国际化翻译函数

功能

标记需要翻译的字符串

在运行时根据当前语言环境返回对应的翻译文本

为 Qt 的翻译工具(lupdate)提供提取字符串的标识

setWindowTitle()函数

作用:设置窗口的标题栏文本

示例

cpp 复制代码
// 设置主窗口标题
mainWindow->setWindowTitle(tr("My Application"));
//在类的成员函数内部
setWindowTitle(tr("DockWindows"));
// 实际上相当于:
this->setWindowTitle(tr("DockWindows"));


// 设置对话框标题
dialog->setWindowTitle(tr("Settings"));

// 直接使用字符串(不翻译)
window->setWindowTitle("Document Editor");

setAlignment()函数

作用:设置控件内容的对齐方式

常用对齐标志

cpp 复制代码
// Qt 命名空间中的对齐常量
Qt::AlignLeft      // 左对齐
Qt::AlignRight     // 右对齐  
Qt::AlignHCenter   // 水平居中
Qt::AlignTop       // 顶部对齐
Qt::AlignBottom    // 底部对齐
Qt::AlignVCenter   // 垂直居中
Qt::AlignCenter    // 居中对齐(水平和垂直)

// 组合使用
Qt::AlignLeft | Qt::AlignTop  // 左上对齐

示例

cpp 复制代码
// 设置标签文本居中对齐
label->setAlignment(Qt::AlignCenter);

// 设置文本右对齐
textEdit->setAlignment(Qt::AlignRight);

// 多行文本编辑器的段落对齐
textEdit->setAlignment(Qt::AlignJustify);

setCentralWidget()函数

作用:设置 QMainWindow 的中心部件

特点

  • 只能用于 QMainWindow 及其子类
  • 每个 QMainWindow 只能有一个中心部件
  • 中心部件占据主窗口中央的主要区域

示例

cpp 复制代码
// 创建主窗口
QMainWindow *mainWindow = new QMainWindow;

// 创建中心部件(可以是任何 QWidget 派生类)
QTextEdit *textEdit = new QTextEdit;
QTableView *tableView = new QTableView;
QGraphicsView *graphicsView = new QGraphicsView;

// 设置中心部件
mainWindow->setCentralWidget(textEdit);
// 或
mainWindow->setCentralWidget(tableView);

setFeatures()和setAllowedAreas()函数

注意:图片为Qt5,Qt6的QDockWidget::DockWidgetFeatures如下

可以发现没有AllDockWidgetFeatures

因此可以用:

cpp 复制代码
dock->setFeatures(QDockWidget::DockWidgetClosable |
                  QDockWidget::DockWidgetMovable |
                  QDockWidget::DockWidgetFloatable);
相关推荐
篮子里的玫瑰1 分钟前
Python与网络爬虫——字典与集合
开发语言·python
良木生香2 分钟前
【C++初阶】STL——Vector从入门到应用完全指南(1)
开发语言·c++·神经网络·算法·计算机视觉·自然语言处理·数据挖掘
Brilliantwxx2 分钟前
【C++】String的模拟实现(代码实现与坑点讲解)
开发语言·c++·笔记·算法
椰猫子7 分钟前
SpringMVC(SpringMVC简介、请求与响应(请求映射路径、请求参数、日期类型参数传递、响应json数据))
java·前端·数据库
skilllite作者12 分钟前
Zed 1.0 编辑器深度评测与实战指南
开发语言·人工智能·windows·python·编辑器·agi
2401_8822737213 分钟前
pattern属性在旧版Android浏览器无效怎么办_手动验证补充【操作】
jvm·数据库·python
楼田莉子15 分钟前
仿Muduo的高并发服务器:Channel模块与Poller模块
linux·服务器·c++·学习·设计模式
zhouwy11316 分钟前
Linux网络编程从入门到精通
linux·c++
迷途之人不知返16 分钟前
deque的简单认识
数据结构·c++
小的~~21 分钟前
Milvus会存在SQL注入攻击吗?
数据库·sql·milvus