es wäre schön, wenn mich jemand bei meinen Problem unterstützen könnte.
Ich würde gern durch das Bestätigen eines Button in einem zweiten Fenster(QDialog) eine Funktion ausführen, die mir im ersten Fenster in ein QListWidget schreibt.
main.cpp
Code: Alles auswählen
#include <QApplication>
#include <QPushButton>
#include <QLayout>
#include <QTextEdit>
#include <QMessageBox>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
//connect(, SecDia::on_ButtonOk_clicked())
//test();
return a.exec();
}
Code: Alles auswählen
#include "mainwindow.h"
#include "secdia.h"
#include "ui_mainwindow.h"
#include "ui_secdia.h"
#include <QMessageBox>
#include <QLabel>
#include <QPushButton>
static int i = 0;
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
//connect(ui->cmdHallo, SIGNAL(clicked()), this, SLOT(test()));
connect(sec->ButtonOk, SIGNAL(clicked()), this, SLOT(test()));
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_cmdHallo_clicked()
{
//QMessageBox *myMessageBox=new QMessageBox(this);
// myMessageBox->setText("Hallo Welt");
//myMessageBox->show();
ui->lblText->setText("Hello");
}
void MainWindow::on_actionBeenden_triggered()
{
this->close();
}
void MainWindow::on_actionNeu_triggered()
{
// test();
sec = new SecDia(this);
sec->show();
}
void MainWindow::test()
{
ui->listWidget->addItem(QString::number(i));
i++;
}
Code: Alles auswählen
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QSignalMapper>
#include "secdia.h"
#include "ui_mainwindow.h"
#include "ui_secdia.h"
#include <QPushButton>
class QPushButton;
class SecDia;
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = nullptr);
~MainWindow();
private slots:
void on_actionBeenden_triggered();
void on_actionNeu_triggered();
void on_cmdHallo_clicked();
public slots:
void test();
private:
Ui::MainWindow *ui;
SecDia *sec;
};
#endif // MAINWINDOW_H
Code: Alles auswählen
#include "secdia.h"
#include "ui_secdia.h"
#include "mainwindow.h"
#include <QMessageBox>
#include <QLabel>
#include <QPushButton>
SecDia::SecDia(QWidget *parent) :
QDialog(parent),
sec(new Ui::SecDia)
{
sec->setupUi(this);
connect(sec->ButtonOk, SIGNAL(clicked()), this, SLOT(test()));
}
SecDia::~SecDia()
{
delete sec;
}
void SecDia::on_ButtonAbbrechen_2_clicked()
{
this->close();
}
void SecDia::on_ButtonOk_clicked()
{
this->close();
}
Code: Alles auswählen
#ifndef SECDIA_H
#define SECDIA_H
#include "ui_secdia.h"
#include <QDialog>
class QPushButton;
class MainWindow;
namespace Ui {
class SecDia;
}
class SecDia : public QDialog
{
Q_OBJECT
public:
explicit SecDia(QWidget *parent = nullptr);
~SecDia();
private slots:
void on_ButtonAbbrechen_2_clicked();
public slots:
void on_ButtonOk_clicked();
private:
Ui::SecDia *sec;
};
#endif // SECDIA_H
Ich hoffe ihr könnt mir weiter helfen.