ich bin sowohl neu in dem forum als auch erst neuerdings mit qt "bekannt"
ich bin leider nicht mit dem talent gesegnet, wirklich gut programmieren zu können. ich muss allerdings für ein praktikum an einer hochschule eine technische anwendung schreiben.
ich muss einen graphen und eine funktion ausgeben können. ich habe daher eine klasse graph von qwidget abgeleitet und dieser die methode paintEvent(...) mitgegeben. erste linien zu zeichen klappte wunderbar.
nun bekomme ich allerdings die daten bzw. funktionswerte für die funktion aus einer anderen klasse. (die bearbeite ich leider nicht, daher weiß ich auch noch nicht, wie sie aussieht)
meine frage ist nur, wie kann ich die funktion paintEvent(QPaintEvent *event) so überladen, dass ich ihr quasi noch ein paar int-werte mitgebe und diese dann auf dem gleichen widget wie der graph gezeichnet werden?
hatte schon probiert einfach die argumentliste zu erweitern. das wollte aber nicht so recht.
bitte um eure hilfe und bin dankbar für jede antwort.
grüße,
marcus
mein code der klasse graph: (nichts berauschendes)
Code: Alles auswählen
//graph.h
#ifndef GRAPH_H
#define GRAPH_H
#include<QWidget>
class graph : public QWidget{
Q_OBJECT
public:
graph(QWidget *parent = 0);
protected:
void paintEvent(QPaintEvent *event);
};
#endif // GRAPH_H
Code: Alles auswählen
//graph.cpp
#include "graph.h"
#include<QPainter>
graph::graph(QWidget *parent) : QWidget(parent) {}
void graph::paintEvent(QPaintEvent *event) {
QPainter achsen(this);
achsen.setPen(QPen(Qt::black, 1));
achsen.begin(this);
achsen.drawLine(0, 350, 500, 350);
achsen.drawLine(0, 0, 0, 350);
for(int x = 25; x < 500; x += 25) {
achsen.drawLine(x, 350, x, 345);
};
for(int y = 25; y < 350; y += 25) {
achsen.drawLine(0, y, 5, y);
};
achsen.end();
}