Russian Qt Forum

Qt => Общие вопросы => Тема начата: Omg от Январь 30, 2011, 20:37



Название: [Решено]Непойму что не так и как исправить.
Отправлено: Omg от Январь 30, 2011, 20:37
Действие программы:
Появляется одно окно, в котором вводятся данные, после чего открывается следующее окно:
.h
Код:
class Login : public QWidget {
Q_OBJECT

public:
...
    QLineEdit* ip;
...

    Login (QWidget *parent = 0);
    ~Login();
     Chat_client chat;

private slots:
    void returnPressed ();
...
};
.cpp
Код:
Login::Login(QWidget *parent)
    : QWidget(parent)
{
  ..
    QLineEdit* ip        = new QLineEdit("IP");
 ...
    connect(ip, SIGNAL(returnPressed()), this, SLOT(returnPressed()));
}
Login::~Login(){}

...
void Login::returnPressed (){
    QString ipy = ip->text();
    chat.setIpX(ipy);
}

Chat.h
Код:
class Chat_client : public QWidget, private Ui::Widget {
Q_OBJECT
private:
...
    QString ipX;      //строка для IP конекта к серверу
   ..
public:
    void setIpX       (QString          );
 ...
};


cpp

Код:
void Chat_client::setIpX       ( QString ip   ){
    ipX=ip;
}

Первое окно открывается. Но при нажатии на enter в строке приложение виснет и говорит, что не может получить доступ к памяти, а именно:
 завершилась с кодом -1073741819


Название: Re: Непойму что не так и как исправить.
Отправлено: Omg от Январь 30, 2011, 21:09
Я подозреваю, что это связанно с тем, что я пытаюсь изменить уже созданный объект. Но как реализовать функциональность иначе? :(


Название: Re: Непойму что не так и как исправить.
Отправлено: BRE от Январь 30, 2011, 21:16
Я подозреваю, что это связанно с тем, что я пытаюсь изменить уже созданный объект.
Это из-за невнимательности.  :)

Код
C++ (Qt)
Login::Login(QWidget *parent)
   : QWidget(parent)
{
   /*QLineEdit* */ ip        = new QLineEdit("IP");
}
 


Название: Re: Непойму что не так и как исправить.
Отправлено: Omg от Январь 30, 2011, 21:21
Премного благодарен, вопрос решился.  ;D