crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

3 страниц V  < 1 2 3  
Ответить в данную темуНачать новую тему
> Ничего не получается с рисованием на виджете
Litkevich Yuriy
  опции профиля:
сообщение 20.5.2008, 7:45
Сообщение #21


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


выходит так
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
guest13
  опции профиля:
сообщение 26.12.2008, 15:21
Сообщение #22


Студент
*

Группа: Новичок
Сообщений: 13
Регистрация: 9.10.2008
Пользователь №: 386

Спасибо сказали: 0 раз(а)




Репутация:   0  


вопрос такой....
имеется такой код
Раскрывающийся текст
#include <QtGui>

class PainterPathWidget : public QWidget {
protected:
    virtual void paintEvent(QPaintEvent*)
    {
        QPainterPath path;
        QPointF      pt1(width(), height() / 2);      
        QPointF      pt2(width() / 2, -height());      
        QPointF      pt3(width() / 2, 2 * height());
        QPointF      pt4(0, height() / 2);
        path.moveTo(pt1);
        path.cubicTo(pt2, pt3, pt4);
        
        QRect rect(width() / 4, height() / 4, width() / 2, height() / 2);        
        path.addRect(rect);        
        path.addEllipse(rect);
        
        QPainter painter(this);        
        painter.setRenderHint(QPainter::Antialiasing, true);        
        painter.setPen(QPen(Qt::blue, 6));        
        painter.drawPath(path);    
    }
public:
    PainterPathWidget(QWidget* pwgt = 0) : QWidget(pwgt)
    {
        
    }
};

int main(int argc, char* argv[])
{
    QApplication app(argc, argv);    

    PainterPathWidget wgt;    
    
    QWidget window;

    QPushButton *q1=new QPushButton("exit");
    
    QVBoxLayout *lay1=new QVBoxLayout;
    wgt.setMinimumSize(200,200);
    lay1->addWidget(q1);
    lay1->addWidget(&wgt);
    window.setLayout(lay1);
        
    QObject::connect(q1,SIGNAL(clicked()),&app,SLOT(quit()));    

    window.show();
    return app.exec();
}

нормально компилится запускается, но при закрытии выдает следующую ошибку
Прикрепленное изображение

что можете сказать по этому поводу?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 26.12.2008, 16:04
Сообщение #23


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


#include <QtGui>

class PainterPathWidget : public QWidget {
protected:
    virtual void paintEvent(QPaintEvent* e)
    {
        QPainterPath path;
        QPointF      pt1(width(), height() / 2);      
        QPointF      pt2(width() / 2, -height());      
        QPointF      pt3(width() / 2, 2 * height());
        QPointF      pt4(0, height() / 2);
        path.moveTo(pt1);
        path.cubicTo(pt2, pt3, pt4);
        
        QRect rect(width() / 4, height() / 4, width() / 2, height() / 2);        
        path.addRect(rect);        
        path.addEllipse(rect);
        
        QPainter painter(this);        
        painter.setRenderHint(QPainter::Antialiasing, true);        
        painter.setPen(QPen(Qt::blue, 6));        
        painter.drawPath(path);    
    }
public:
    PainterPathWidget(QWidget* pwgt = 0) : QWidget(pwgt)
    {
        
    }
};
int main(int argc, char* argv[])
{
    QApplication app(argc, argv);    
    QWidget window;
    PainterPathWidget wgt;    
    QPushButton q1("exit");
    QVBoxLayout lay1(&window);
    wgt.setMinimumSize(200,200);
    lay1.addWidget(&q1);
    lay1.addWidget(&wgt);

    QObject::connect(&q1,SIGNAL(clicked()),&app,SLOT(quit()));    

    window.show();
    return app.exec();
}


найди 10 отличий:)
все работает.
почитай если интересно про иерахию классов и осовобождение памяти в Qt.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
TiiL
  опции профиля:
сообщение 10.6.2011, 14:15
Сообщение #24


Участник
**

Группа: Участник
Сообщений: 124
Регистрация: 8.6.2011
Пользователь №: 2727

Спасибо сказали: 0 раз(а)




Репутация:   0  


Здравствуйте, обьясните мне не догоняющему, где в приложении описанном в этой теме на первой странице задаютцася координаты графика.

и возможно ли сделать оси координат ЛОгарифмическими?


ЗЫ: было бы хорошо еслиб ткнули носом хотябы в функции которые надо изменить под лагорифмические оси... СПасибо
Причина редактирования: не красиво было
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

3 страниц V  < 1 2 3
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 20.4.2024, 19:13