In questo post verra' mostrato un esempio di come disegnare in una QGraphicsScene
Per prima cosa si crea un nuovo progetto definendo un QDialog
A questo punto dall'editor visuale si aggiunge al form una
Si modificano i file dialog.h e dialog.cpp come evidenziato nel listato sotto riportato
ed ecco il risultato (non e' un granche')
dialog.h
----------------------------------
#ifndef DIALOG_H
#define DIALOG_H
#include <QDialog>
#include <QtCore>
#include <QtGui>
namespace Ui {
class Dialog;
}
class Dialog : public QDialog
{
Q_OBJECT
public:
explicit Dialog(QWidget *parent = 0);
~Dialog();
private:
Ui::Dialog *ui;
QGraphicsScene *scene;
QGraphicsLineItem *linea;
};
#endif // DIALOG_H
----------------------------------
dialog.cpp
----------------------------------
#include "dialog.h"
#include "ui_dialog.h"
Dialog::Dialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::Dialog)
{
ui->setupUi(this);
scene = new QGraphicsScene(this);
ui->graphicsView->setScene(scene);
QBrush brush(Qt::black);
QPen penna(Qt::black);
penna.setWidth(6);
linea = scene->addLine(100,100,100,100,penna);
}
Dialog::~Dialog()
{
delete ui;
}
----------------------------------
da tenere presente che non esiste una primitiva per il disegno di un punto
si puo' vedere l'esempio di Mandelbrot in Qt per vedere come disegnare i singoli pixel