у меня есть Qtablewidget, я реализовал делегат для этой таблицы
вот так: Num(по умолчанию) | элемент (Qcombobox) | -кол-во-(QdoubleSpinBox)| Цена(QdoubleSpinBox)|промежуточный итог (QdoubleSpinBox)
я хочу рассчитать промежуточный итог (количество * цена) для каждой строки с помощью делегата, но на самом деле я не знаю, как выдавать данные из делегата
я попробовал это из своего пользовательского делегата
QWidget *customTableSellDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const
{
if(!index.isValid())
return QStyledItemDelegate::createEditor(parent,option,index);
int col= index.column();
if(col == 1)
{
QComboBox *comboboxEditor = new QComboBox(parent);
return comboboxEditor;
}
// col3
else if(col ==2 || col ==3 || col ==4 || col == 5 || col == 6 || col == 7)
{
QDoubleSpinBox *doubleSpinBoxEditor = new QDoubleSpinBox(parent);
doubleSpinBoxEditor->setInputMethodHints(Qt::ImhFormattedNumbersOnly);
doubleSpinBoxEditor->setRange(0.000000,999999999);
doubleSpinBoxEditor->setSuffix(" D.A");
doubleSpinBoxEditor->setDecimals(2);
doubleSpinBoxEditor->setFrame(false);
if(col == 2 || col == 3)
{
connect(doubleSpinBoxEditor,SIGNAL(valueChanged(double)),this,SLOT(testSlot(double)));
}
return doubleSpinBoxEditor;
}else{
return QStyledItemDelegate::createEditor(parent,option,index);
}
}
Итак, как лучше всего это сделать?