Такой вопрос. Есть 2 класса и 2 header файла. каждому классу соответствует своя форма. на форме1 есть текстовое поле мне надо что бы при клике кнопки на форме два из текстового поля бралось значение и передавалось как значение для уже созданого label. Не работает. Вот код. что исправить?
mainw.h
#ifndef MAINW_H
#define MAINW_H
#include <QMainWindow>
#include "start.h"
#include <QString>
namespace Ui {
class MainW;
}
class MainW : public QMainWindow
{
Q_OBJECT
public:
explicit MainW(QWidget *parent = 0);
~MainW();
start* st;
MainW* wt1;
static QString log1;
private:
Ui::MainW *ui;
private slots:
void on_edit_login_editingFinished();
void on_button_exit_clicked();
void on_button_login_clicked();
};
#endif // MAINW_H
start.h
#ifndef START_H
#define START_H
#include <QWidget>
namespace Ui {
class start;
}
class start : public QWidget
{
Q_OBJECT
public:
explicit start(QWidget *parent = 0);
~start();
private:
Ui::start *ui;
private slots:
void on_pushButton_clicked();
};
#endif // START_H
main.cpp
#include <QtGui/QApplication>
#include "mainw.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
start w;
w.hide();
MainW w1;
w1.show();
w1.st = &w;
w1.wt1 =&w1;
return a.exec();
}
mainw.cpp
#include "start.h"
#include "ui_start.h"
#include "mainw.h"
#include "ui_mainw.h"
MainW::MainW(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainW)
{
ui->setupUi(this);
}
MainW::~MainW()
{
delete ui;
}
void MainW::on_button_login_clicked()
{
st->show();
wt1->hide();
MainW::log1= this->ui->edit_login->text();
}
void MainW::on_button_exit_clicked()
{
}
void MainW::on_edit_login_editingFinished()
{
}
start.cpp
#include "start.h"
#include "ui_start.h"
#include "mainw.h"
#include "ui_mainw.h"
start::start(QWidget *parent) :
QWidget(parent),
ui(new Ui::start)
{
ui->setupUi(this);
ui->label->setText(MainW::log1);
}
start::~start()
{
delete ui;
}
void start::on_pushButton_clicked()
{
}
Примечание:
SetText у меня происходит но в другом окне. дело в том что у меня вообще не компилируется программа с ошибкой линкера. id2
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.