ich bin relativ neu was C++ im allgemeinen und Qt im speziellen angeht. Habe bis jetzt eher Mikrocontroller in C programmiert (auch ARM Cortex-M) und u.a. ein Projekten mit einem Umfang von >40k Zeilen Quellcode. Trotzdem wird euch meine Frage jetzt vielleicht "doof" vorkommen
Ich will eine Klasse erstellen die mehrere Objekte in einer QGraphicsScene zusammen fasst.
Zuerst einmal reichen mir 4 gerade Linien (später sollen dann u.a. noch 4 acrTo, 1 Linie, 2 Textfelder, sowie ein Array aus Zeigern auf andere Elemente der selben Klasse dazu kommen).
Da ich mehrere dieser Gruppen dieses Typs in einer QGraphicsScene verwenden will muss ich ja einen Zeiger auf die Scene übergeben, richtig?
Code: Alles auswählen
public:
QGraphicsScene* pq_scene;
Code: Alles auswählen
static qreal ax, ay, bx, by, cx, cy, dx, dy;
Wie muss ich die Linien (Typ: QGraphicsLineItem) jetzt deklarieren (und kann man diese auch private machen)?
Also der Code geht nich:
Code: Alles auswählen
class pr_state : public QMainWindow
{
Q_OBJECT
public:
QGraphicsScene* pq_scene;
explicit pr_state(QWidget *parent = 0);
static qreal ax, ay, bx, by, cx, cy, dx, dy;
void draw_state(void);
signals:
public slots:
private:
QGraphicsLineItem q_line1, q_line2, q_line3, q_line4;
};
void pr_state::draw_state(void)
{
q_line1 = pq_scene.addLine( ax, ay, bx, by, QPen() );
q_line2 = pq_scene.addLine( bx, by, cx, cy, QPen() );
q_line3 = pq_scene.addLine( cx, cy, dx, dy, QPen() );
q_line4 = pq_scene.addLine( dx, dy, ax, ay, QPen() );
}