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);
相关推荐
jnrjian1 天前
text index 查看index column index定义 index 刷新频率 index视图
数据库·oracle
551只玄猫1 天前
【数学建模 matlab 实验报告13】主成分分析
开发语言·数学建模·matlab·课程设计·主成分分析
瀚高PG实验室1 天前
审计策略修改
网络·数据库·瀚高数据库
zzzzls~1 天前
Python 工程化: 用 Copier 打造“自我进化“的项目脚手架
开发语言·python·copier
言慢行善1 天前
sqlserver模糊查询问题
java·数据库·sqlserver
韶博雅1 天前
emcc24ai
开发语言·数据库·python
有想法的py工程师1 天前
PostgreSQL 分区表排序优化:Append Sort 优化为 Merge Append
大数据·数据库·postgresql
yongui478341 天前
C# 与三菱PLC通讯解决方案
开发语言·c#
2501_933329551 天前
技术架构深度解析:Infoseek舆情监测系统的全链路设计与GEO时代的技术实践
开发语言·人工智能·分布式·架构
Tong Z1 天前
常见的限流算法和实现原理
java·开发语言