将qtablewidget项转换为float

时间:2013-07-26 19:54:19

标签: c++ qt qt5

我有一个Qtablewidget和一个信号cellchanged(),它调用Slot Change();

setup_ui->tableWidget->setRowCount(1);
setup_ui->tableWidget->setColumnCount(2);
QTableWidgetItem *item = new QTableWidgetItem("Gain");
setup_ui->tableWidget->setHorizontalHeaderItem(0,item);
QTableWidgetItem *item1 = new QTableWidgetItem("Offset");
setup_ui->tableWidget->setHorizontalHeaderItem(1,item1);

但是,我无法将单元格编辑的值转换为float,例如

setup_ui->tableWidget->item(0,0)->float();

请帮忙,

1 个答案:

答案 0 :(得分:3)

您在插槽中需要什么

Class::Change( int row, int column ) {
  bool ok
  float value = setup_ui->tableWidget->item(row, column)->text().toFloat(&ok);
  if (ok) {
    // do whatever with value
  }
  else {
    // do some error handling
  }
}

如果你可以保证转换永远不会失败,你可以跳过标志(bool ok)!

有关详情,请发布更多代码......