Qt Designer Form Class的一些对象。是少数对象=几个对话窗口?

时间:2016-11-09 22:52:08

标签: c++ qt qwidget qt-designer

我有一些设计师表格类,其中构造函数包含车辆索引:

Vehicle::Vehicle(QWidget *parent, int _index) :
  QDialog(parent),
  ui(new Ui::Vehicle)
{
  this->_index = _index;
}

在主类中,我创建了一个类的对象:

Vehicle* vehicle = NULL;

我有10个按钮可以打开10种不同的车辆对话类:

void MainWindow::OnOpenDialog1()
{
  if(vehicle==NULL)
    vehicle = new vehicle(this, 0);

  if(vehicle->isHidden()) {
    vehicle->show();
  }
  else
    vehicle->hide();
}

void MainWindow::OnOpenDialog2()
{
  if(vehicle==NULL)
    vehicle = new vehicle(this, 1);

  if(vehicle->isHidden()) {
    vehicle->show();
  }
  else
    vehicle->hide();
}
.....

但是这样我只打开一个对话框,其他按钮打开了同一个对话框。

Shuld我创建了一个10级的对象?

Vehicle* vehicle1 = NULL;
Vehicle* vehicle2 = NULL;
Vehicle* vehicle3 = NULL;
....

我以为我可以使用单个对象类并仅在构造函数中插入索引,并且在一个更改形式上显示的数据取决于索引?

0 个答案:

没有答案