Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Непонятки с QPainter
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Система рисования. Печать
Mystdeim
Не могу объявить объект класса QPainter.

lab1.h:
#include "ui_lab1.h"

class lab1: public QWidget {
Q_OBJECT
private:
    Ui::lab1Class ui;
protected:
    virtual void paintEvent(QPaintEvent* pe) {
    }
public:
    lab1(QWidget *parent = 0);
    ~lab1();
    void drawgraph();
};


lab1.cpp
#include "lab1.h"

lab1::lab1(QWidget *parent) : QWidget(parent) {
        ui.setupUi(this);
    }

lab1::~lab1() {

}
void paintEvent(QPaintEvent* pe) {
    QPainter painter1; //Тут ошибка
....
}


Компилятор пишет:
Цитата
lab1.cpp:13: error: aggregate `QPainter painter1' has incomplete type and cannot be defined


Не понимаю что не нравиться... лаба стоит :(
trdm
#include <QPainter>
Mystdeim
Спасибо, помогло, не знал что отдельно надо объявлять
ЙаМайскЫйПчОЛ
Мне кажется корректней было бы #include <QtGui>
ибо не знаешь, где найдешь где потеряешь)

не забывай ставить макросы на хедеры, типа

#ifndef __ХХХ__
#define __ХХХ__

// вставь код сюда


#endif // __ХХХ__
Litkevich Yuriy
Цитата(Mystdeim @ 11.9.2008, 16:51) *
не знал что отдельно надо объявлять
что значет отдельно, откуда компиллер знать будет где какие файлы.
На первых порах лучше используй как сказал
Цитата(ЙаМайскЫйПчОЛ @ 11.9.2008, 17:19) *
Мне кажется корректней было бы #include <QtGui>
хотя это не корректней, а проще, но компиллер будет метатся повсем файлам относящимся с модулю QtGui.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2019 IPS, Inc.