Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt GUI _ Взаимодействие форм

Автор: mettamo 3.12.2009, 21:21

Здравствуйте! Есть две формы на первой расположена таблица QTableWidget на второй SpinBox в котором задается размер таблицы, расскажите пожалуйста как организовать взаимодействие между формами?

Так я подключаю вторую форму:

Ui_OptionsForm *OptForm = new Ui_OptionsForm;
QWidget *FOptions = new QWidget;
OptForm->setupUi(FOptions);
FOptions->show();

размер
int p;

ui->MatrixSaper->setColumnCount(p);
ui->MatrixSaper->setRowCount(p);

а как поместить в p значение SpinBox с другой формы?

Автор: Litkevich Yuriy 3.12.2009, 21:57

Цитата(mettamo @ 4.12.2009, 0:21) *
Так я подключаю вторую форму:
к чему подключаешь? как у тебя файлы взаимосвязаны, изобрази схематично

Автор: mettamo 3.12.2009, 22:05

MainWindow.ui MainWindow.h MainWindow.cpp ui_MainWindow.h - это главное окно
OptionsForm.ui ui_OptionsForm.h - подключаемое окно.


Автор: Litkevich Yuriy 3.12.2009, 22:23

Цитата(mettamo @ 4.12.2009, 1:05) *
OptionsForm.ui ui_OptionsForm.h - подключаемое окно.
объект второго окна, где создаётся?

Автор: mettamo 3.12.2009, 22:46

в ui_OptionsForm.h

class Ui_OptionsForm
{
public:
QLabel *label;
QSpinBox *HorizontBox;
QLabel *label_2;
QLabel *label_3;
QSpinBox *VerticalBox;
QPushButton *pushButton;
QPushButton *pushButton_2;
QLabel *label_4;
QSpinBox *MinesBox;

void setupUi(QWidget *OptionsForm)
{
if (OptionsForm->objectName().isEmpty())
OptionsForm->setObjectName(QString::fromUtf8("OptionsForm"));
OptionsForm->resize(214, 230);
label = new QLabel(OptionsForm);
label->setObjectName(QString::fromUtf8("label"));
label->setGeometry(QRect(20, 11, 91, 31));
HorizontBox = new QSpinBox(OptionsForm);
HorizontBox->setObjectName(QString::fromUtf8("HorizontBox"));
....

Автор: Litkevich Yuriy 4.12.2009, 0:24

Цитата(mettamo @ 4.12.2009, 1:46) *
в ui_OptionsForm.h
здесь объект не создаётся, здесь описан класс этого объекта

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)