我有以下功能:
ui->user->setCurrentIndex(ui->user->findText(modelSuppliers->record(index.row()).value(modelSuppliers->record(index.row()).fieldName(5)).toString()));
当选择表上的行时,它将下拉菜单的当前索引设置为关系表模型上的相应列。 我只是写了这个函数,只是看着它晕了。也许在一个月里,当我看到这件事时,我会呕吐。你如何处理这种声明。您是否会创建一个中间变量来保存函数的某些部分,例如
QString value=modelSuppliers->record(index.row()).fieldName(5)).toString();
并在原始函数中插入值?或者你只是不打扰?
答案 0 :(得分:0)
分解代码时,代码变得更容易阅读:
auto record = modelSuppliers->record(index.row());
auto fieldName = record.fieldName(5);
auto text = record.value(fieldName).toString();
auto index = ui->user->findText(text);
ui->user->setCurrentIndex(index);