在另一个对象的QList中转换对象的QList

时间:2018-08-12 08:56:59

标签: qt lambda qlist

我认为这里的答案非常简单,但我在Google中找不到。

我有一个QList<QSerialPortInfo>,其中包含来自串行端口的所有信息,并且我想用所有端口名称填充组合框。很简单,不是吗?

问题是,(当然)组合框接受QList<QStrings>,因此为了正确地将它们传递到组合框,我必须执行类似的操作

QList<QSerialPortInfo> allports = QSerialPortInfo::availablePorts();
ui->cmb_PortName->clear();
foreach(QSerialPortInfo pi, allports)
    ui->cmb_PortName->addItem(pi.portName());

现在,我不知道我是否对C#中的lambda表达式感到困惑,但是我认为可以有某种方法来进行转换而无需逐项添加。有点像(我认为使用C#语法)

ui->cmb_PortName->addItems((allports) => allports.portName());

是否有类似的方法或最佳方法是像我一样通过foreach

最诚挚的问候

0 个答案:

没有答案