如何深入理解并掌握QT基础教程之八中Qt消息机制和事件的应用?

2026-04-12 02:191阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计2132个文字,预计阅读时间需要9分钟。

如何深入理解并掌握QT基础教程之八中Qt消息机制和事件的应用?

Qt基础教程之八:Qt消息机制和事件+QPainter+Qt的绘图系统允许使用相同的API在屏幕及其它打印设备上进行绘制。整个绘图系统基于QPainter、QPainterDevice和QPaintEngine三个类。QPainter用来执行绘制操作。

QT基础教程之八Qt消息机制和事件

QPainter

Qt 的绘图系统允许使用相同的 API 在屏幕和其它打印设备上进行绘制。整个绘图系统基于QPainter,QPainterDevice和QPaintEngine三个类。

QPainter用来执行绘制的操作;QPaintDevice是一个二维空间的抽象,这个二维空间允许QPainter在其上面进行绘制,也就是QPainter工作的空间;QPaintEngine提供了画笔(QPainter)在不同的设备上进行绘制的统一的接口。QPaintEngine类应用于QPainter和QPaintDevice之间,通常对开发人员是透明的。除非你需要自定义一个设备,否则你是不需要关心QPaintEngine这个类的。我们可以把QPainter理解成画笔;把QPaintDevice理解成使用画笔的地方,比如纸张、屏幕等;而对于纸张、屏幕而言,肯定要使用不同的画笔绘制,为了统一使用一种画笔,我们设计了QPaintEngine类,这个类让不同的纸张、屏幕都能使用一种画笔。

下图给出了这三个类之间的层次结构:

上面的示意图告诉我们,Qt 的绘图系统实际上是,使用QPainter在QPainterDevice上进行绘制,它们之间使用QPaintEngine进行通讯(也就是翻译QPainter的指令)。

阅读全文

本文共计2132个文字,预计阅读时间需要9分钟。

如何深入理解并掌握QT基础教程之八中Qt消息机制和事件的应用?

Qt基础教程之八:Qt消息机制和事件+QPainter+Qt的绘图系统允许使用相同的API在屏幕及其它打印设备上进行绘制。整个绘图系统基于QPainter、QPainterDevice和QPaintEngine三个类。QPainter用来执行绘制操作。

QT基础教程之八Qt消息机制和事件

QPainter

Qt 的绘图系统允许使用相同的 API 在屏幕和其它打印设备上进行绘制。整个绘图系统基于QPainter,QPainterDevice和QPaintEngine三个类。

QPainter用来执行绘制的操作;QPaintDevice是一个二维空间的抽象,这个二维空间允许QPainter在其上面进行绘制,也就是QPainter工作的空间;QPaintEngine提供了画笔(QPainter)在不同的设备上进行绘制的统一的接口。QPaintEngine类应用于QPainter和QPaintDevice之间,通常对开发人员是透明的。除非你需要自定义一个设备,否则你是不需要关心QPaintEngine这个类的。我们可以把QPainter理解成画笔;把QPaintDevice理解成使用画笔的地方,比如纸张、屏幕等;而对于纸张、屏幕而言,肯定要使用不同的画笔绘制,为了统一使用一种画笔,我们设计了QPaintEngine类,这个类让不同的纸张、屏幕都能使用一种画笔。

下图给出了这三个类之间的层次结构:

上面的示意图告诉我们,Qt 的绘图系统实际上是,使用QPainter在QPainterDevice上进行绘制,它们之间使用QPaintEngine进行通讯(也就是翻译QPainter的指令)。

阅读全文