我想有超過100個標籤,以更新的能力,所以我打算把它們放入數組是這樣的:如何初始化超過100 QLabel以高效的方式
voltage_label_array[0] = this->ui->Voltage_0;
voltage_label_array[1] = this->ui->Voltage_1;
voltage_label_array[...] = this->ui->Voltage_2;
voltage_label_array[...n] = this->ui->Voltage_n;
,然後有這個方法
void MainWindow::updateValue(int i, int voltage){
voltage_label_array[i]->setText(QString::number(voltage));
}
但有100行來設置這似乎是一個壞主意。有沒有辦法可以初始化一個QLabel
數組內的for循環或什麼?
如果它們都是單獨的變量,則不適用。也許有一種方法可以讓Qt的UI編譯器將它們放入數組中,或者也可以使用QListWidget或QTableWidget代替。 – immibis
您可能會考慮以編程方式構建GUI(例如,在for循環中使用「new QLabel」,使用QBoxLayout對象執行佈局)而不是使用GUI編輯器程序。這比在編輯器中手動構建100多個小部件要快,並且在將來更容易維護/更新。 –