我有一个Qt窗口,它在QListWidget中显示客户端名称。当我双击它时,将出现一个新窗口,必须显示带有名称的行编辑和用于保存更改的按钮。

我做了新窗口,并在该窗口中进行了行编辑,但是我不知道如何从主窗口中将de QString“name”传递到该窗口中

最佳答案

创建窗口后,只需在新窗口的行编辑中调用setText()。我假设您正在使用QListWidget::itemDoubleClicked()信号来检测双击。该信号将QListWidgetItem指针作为参数传递。因此,如果将信号连接到带有QListWidgetItem*参数的插槽,则可以通过QListWidgetItem::text()函数获得双击项的文本:

void mySlot(QListWidgetItem* item)
{
    // Create the new window and the line edit.
    // ...

    lineEdit->setText(item->text());

    // Now show the new window.
}

10-08 08:34