#include <QApplication>
#include <QWidget>
#include <QPainter>
class PainterWidget : public QWidget
{
protected:
// 重新定義paintEvent()事件處理
void paintEvent(QPaintEvent*);
//?};
// 實作事件處理
void PainterWidget::paintEvent(QPaintEvent *event)//
//?{
// 建立QPainter
QPainter painter(this);
// 設定筆觸為點狀線
painter.setPen(Qt::DotLine);
// 指定x、y、width、height繪製線條
painter.drawLine(10, 10, 100, 10);
}
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
PainterWidget pWidget;
pWidget.setWindowTitle("QPainter");
pWidget.resize(350, 400);
pWidget.show();
return app.exec();
}
提问:
1、?处的语法对否?
void paintEvent(QPaintEvent *event);呢???
2、没有#include <QPaintEvent>类,编译居然也能通过?
QPaintEvent其父类是QEvent。没了~~~~
3、QPaintEvent事件消息的机制???
稍微几句话~
谢谢~~~
[ 此帖被yangfanxing在2009-08-25 13:07重新编辑 ]