我想画个矩形,大家帮我看看问题出在什么地方了,我建立了一个类RenderArea,下面是代码,不长,谢谢
line.zip (3 K) 下载次数:4 源码,文件,谢谢
renderarea.h:
#ifndef RENDERAREA_H
#define RENDERAREA_H
#include <QWidget>
class RenderArea : public QWidget
{
public:
RenderArea();
public slots:
void drawLine();
protected:
void paintEvent(QPaintEvent *);
};
#endif // RENDERAREA_H
renderarea.cpp:
#include "renderarea.h"
RenderArea::RenderArea()
{
setBackgroundRole(QPalette::Base);
setAutoFillBackground(true);
}
void RenderArea::drawLine()
{
update();
}
void RenderArea::paintEvent(QPaintEvent *)
{
QRect rect(10, 20, 100, 400);
}
window.h:
#include <QtGui/QWidget>
#include "ui_window.h"
#include "renderarea.h"
class RenderArea;
class Window : public QWidget
{
Q_OBJECT
public:
Window(QWidget *parent = 0, Qt::WFlags flags = 0);
~Window();
private slots:
void draw();
private:
Ui::WindowClass ui;
RenderArea *renderArea;
};
#endif // WINDOW_H
window.cpp:
#include "window.h"
Window::Window(QWidget *parent, Qt::WFlags flags)
: QWidget(parent, flags)
{
ui.setupUi(this);
draw();
}
Window::~Window()
{
}
void Window::draw()
{
renderArea->drawLine();
}
折腾了几天了,这个简单的问题还搞不定,哎~~~
[ 此贴被sunwj在2008-12-08 10:08重新编辑 ]