Russian Qt Forum

Qt => Вопросы новичков => Тема начата: StatuS74 от Июня 06, 2011, 07:26



Название: передача переменных
Отправлено: StatuS74 от Июня 06, 2011, 07:26
подскажите у меня есть главная форма и созданный мной виджет. как передать значение переменных полученных на моем виджете  в главную форму для использования.


Название: Re: передача переменных
Отправлено: LisandreL от Июня 06, 2011, 07:51
Сделать функции доступа.

Можно, конечно и в паблик переменные перенести, но правильнее функции доступа делать.


Название: Re: передача переменных
Отправлено: StatuS74 от Июня 06, 2011, 07:56
это как ?


Название: Re: передача переменных
Отправлено: StatuS74 от Июня 06, 2011, 11:03
подскажите в чем ошибка на этом этапе вываливается программа
Код:
 ui1->lineEdit_2->setText(QString(ui_m->comboBox->currentText()));


Название: Re: передача переменных
Отправлено: Mikhail от Июня 06, 2011, 11:13
ui1->lineEdit_2->setText(QString(ui_m->comboBox->currentText())); избыточно
ui1->lineEdit_2->setText(ui_m->comboBox->currentText()); достаточно

Трудно гадать без кода.
Что такое ui1 и ui_m. знают ли они друг о друге.
Что такое comboBox.

Код в студию.


Название: Re: передача переменных
Отправлено: StatuS74 от Июня 06, 2011, 11:15
Код:
 Ui_MainWindow * ui1;
 ui1->lineEdit_2->setText(QString(ui_m->comboBox->currentText()));
это на писано на втором виджете который я сам создал. это он и есть ui_m.
в комбобоксе хранится названия устройств


Название: Re: передача переменных
Отправлено: StatuS74 от Июня 06, 2011, 11:55
вываливается вся программа при таком коде понять проблему не могу подскажите


Название: Re: передача переменных
Отправлено: kambala от Июня 06, 2011, 12:24
раз не хочешь более-менее полный код показывать, то тыкну пальцем в небо - память под ui1 и ui_m выделена?


Название: Re: передача переменных
Отправлено: StatuS74 от Июня 06, 2011, 12:30
это я использую чтобы на форму mainwindow в lineEdit записать имя устройство с которым я работаю
Код:
 Ui_MainWindow * ui1;
 ui1->lineEdit_2->setText(ui_m->comboBox->currentText());


Код:
вот это главная форма
public:
Ui::MainWindow *ui;

это созданный мой виджет
Код:
public:
Ui::connect_adaptera *ui_m;






Название: Re: передача переменных
Отправлено: Mikhail от Июня 06, 2011, 12:53
Что же подсказать если не показываешь полный код?



Название: Re: передача переменных
Отправлено: Igors от Июня 06, 2011, 14:56
Код:
 Ui_MainWindow * ui1;
 ui1->lineEdit_2->setText(ui_m->comboBox->currentText());
Люди понимают что Вы показываете "псевдо-код", типа так
Код
C++ (Qt)
Ui_MainWindow * ui1;
...
// где-то присвоил ui1 значение
...
// а теперь вызывается
ui1->lineEdit_2->setText(ui_m->comboBox->currentText());
 
Потому что ui1 должно содержать правильное значение, просто так конечно свалится



Название: Re: передача переменных
Отправлено: StatuS74 от Июня 07, 2011, 05:43
а как правельно задается сигнал и слот ?


Название: Re: передача переменных
Отправлено: kuzulis от Июня 07, 2011, 07:30
а как правельно задается сигнал и слот ?
1. http://www.prog.org.ru/topic_8257_0.html
2. http://www.prog.org.ru/topic_765_0.html