对事件的响应是通过信号与槽调用
事件中根据事件触发的条件发出不同的信号
比如:鼠标事件发出clicked与dblclicked等信号
QT中事件是怎么实现的?
QT把事件自己定义成固定的virtual保护函数
这些函数自动被系统调用
1. paintEvent
案例:
1. 覆盖QWidget的paintEvent
绘制gdi(Graphics DrawInterface)
代码:
main.cpp
#include<QApplication>
#include<QWidget>
#include “PaintWidget.h”
int main(int args , char **argv)
{
QApplication app(args , argv);
PaintWidget w;
w.resize(400,400);
w.setVisible(true);
return app.exec();
}
main.pro
TEMPLATE=app
SOURCES=main.cpp PaintWidget.cpp
HEADERS=PaintWidget.h
CONFIG=release qt
QT=core gui
TARGET=main
PaintWidget.h
#ifndef PAINT_WIDGET_H
#define PAINT_WIDGET_H
#include<QWidget>
#include<QPaintEvent>
class PaintWidget:public QWidget
{
protected:
virtual void paintEvent( QPaintEvent * e);
};
#endif
PaintWidget.cpp
#include “PaintWidget.h”
#include<QPainter>
#include<QPoint>

本文介绍QT中的绘图事件PaintEvent的使用,通过覆盖QWidget的paintEvent函数,利用QPainter进行图形、图像和字符串的绘制。详细展示了如何绘制直线、弧线、多边形、椭圆、文本以及加载并显示图像。
最低0.47元/天 解锁文章
1360

被折叠的 条评论
为什么被折叠?



