Files
张宗平 1f66098277 Qt 示例窗口默认不再自动退出,仅离屏验证时自动退出
p03/ 生成产物与 docs/teaching/examples/ 手工示例里的 QTimer::singleShot
自动退出逻辑,从"始终 200ms 后退出"改为"仅当 QT_QPA_PLATFORM=offscreen
时才退出"。正常运行(有显示环境)窗口保持打开,需手动关闭;离屏自动化
验证(tools/run_qt.sh + QT_QPA_PLATFORM=offscreen)行为不变。

p03/ 改动来自重新生成 tools/gen_part3.py(AUTO_QUIT 常量加 qgetenv 判断),
未手改生成产物。QCoreApplication 控制台风格示例(qfile_basic 等)本就
执行完即退出,不受影响。
2026-07-02 16:14:49 +08:00
..

p03/ch08 — Qt 示例

可运行示例

目标 源文件 说明
label_text_create label_text_create.cpp 构建运行见顶层 README;离屏验证 QT_QPA_PLATFORM=offscreen tools/run_qt.sh label_text_create
label_text_html label_text_html.cpp 构建运行见顶层 README;离屏验证 QT_QPA_PLATFORM=offscreen tools/run_qt.sh label_text_html
label_pixmap label_pixmap.cpp 构建运行见顶层 README;离屏验证 QT_QPA_PLATFORM=offscreen tools/run_qt.sh label_pixmap
label_movie label_movie.cpp 构建运行见顶层 README;离屏验证 QT_QPA_PLATFORM=offscreen tools/run_qt.sh label_movie
custom_widget custom_widget.cpp 构建运行见顶层 README;离屏验证 QT_QPA_PLATFORM=offscreen tools/run_qt.sh custom_widget

参考片段(签名/伪代码,未单独建目标)

[block 0] 显示文字 (普通文本、html)

voidsetText(const QString &)

[block 3] 显示图片

voidsetPixmap(const QPixmap &)

[block 4] 显示图片

QPixmap pixmap;

[block 5] 显示图片

pixmap.load(":/Image/boat.jpg");

[block 6] 显示图片

QLabel *label = new QLabel;
label.setPixmap(pixmap);

[block 7] 显示动画

voidsetMovie(QMovie * movie)

[block 8] 显示动画

QMovie *movie = new QMovie(":/Mario.gif");

[block 9] 显示动画

movie->start();

[block 10] 显示动画

QLabel *label = new QLabel
label->setMovie(movie);

[block 11] 设置/获取内容

QStringtext() const

[block 12] 设置/获取内容

voidsetText(const QString &)

[block 13] 设置显示模式

voidsetEchoMode(EchoMode mode)

[block 14] 设置显示模式

void setTextMargins(int left, int top, int right, int bottom)