Ein Widget komplett an Methode übergeben
Verfasst: 26. März 2018 13:57
Hallo zusammen,
ich habe mich jetzt dumm und dämlich gesucht, und finde leider keine für mich verständlich antwort.
meine aufgabe: die t.h
die cpp.
Leider fehlt mir hier das verständniss, bzw. fehlt mir die grundlage der übergabe.
Würde mich freuen wenn einer von euch mir das kurz erklären könnte.
Danke im voraus
ich habe mich jetzt dumm und dämlich gesucht, und finde leider keine für mich verständlich antwort.
meine aufgabe: die t.h
Code: Alles auswählen
#ifndef TASCHENRECHNER_H
#define TASCHENRECHNER_H
#include <QMainWindow>
namespace Ui {
class Taschenrechner;
}
class Taschenrechner : public QMainWindow
{
Q_OBJECT
public:
explicit Taschenrechner(QWidget *parent = 0);
~Taschenrechner();
//der Slot
public slots:
//für die Schaltfläche
void on_pushButton_clicked();
private:
Ui::Taschenrechner *ui;
enum fehler {istKlein, istGroß, istNull};
void fehlerAbfangen(); //<---- diese funktion soll es sein
};
#endif // TASCHENRECHNER_H
Code: Alles auswählen
#include "taschenrechner.h"
#include "ui_taschenrechner.h"
Taschenrechner::Taschenrechner(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::Taschenrechner)
{
ui->setupUi(this);
}
Taschenrechner::~Taschenrechner()
{
delete ui;
}
//der Slot für die Schaltfläche
void Taschenrechner::on_pushButton_clicked()
{
float zahl1, zahl2, ergebnis = 0;
bool flag = false;
//für die Ausgabe
QString ausgabe;
//die Zahlen einlesen und umwandeln
zahl1 = ui->lineEdit->text().toFloat();
zahl2 = ui->lineEdit_2->text().toFloat();
try
{
fehlerAbfangen(); //<------line prüfung
}
catch()// das kommt noch
{
}
if (ui->radioButtonAddition->isChecked() == true)
ergebnis = zahl1 + zahl2;
if (ui->radioButtonSubtraktion->isChecked() == true)
ergebnis = zahl1 - zahl2;
if (ui->radioButtonDivision->isChecked() == true)
{
if (zahl2 != 0)
ergebnis = zahl1 / zahl2;
else
flag = true;
}
if (ui->radioButtonMultiplikation->isChecked() == true)
ergebnis = zahl1 * zahl2;
if (flag == true)
ausgabe = "Nicht definiert!";
else
ausgabe.setNum(ergebnis);
ui->label->setText(ausgabe);
ui->lcdNumber->display(ergebnis);
}
void Taschenrechner::fehlerAbfangen() //<-- in diese funktion muss ich es übergeben
{
}
Würde mich freuen wenn einer von euch mir das kurz erklären könnte.
Danke im voraus