在我的程序中,我有一个QListWidget,一些lineEdit小部件和一个pushButton。当用户点击QListWidget中的项目时,他们可以在lineEdit小部件中输入一些信息和值,然后通过单击"保存"保存该信息。按钮。
这是我的程序看起来像的图像。有问题的QListWidget是标题为" Messages"
的QListWidget
目前,用户必须先单击“保存”,然后才能在“消息”列表中选择其他项目。 这是我目前的"保存"功能:
void MainWindow::on_Mmsave_clicked()
{
messages[ui->Mmlist->currentRow()] = ui->Mmessage->toPlainText();
//Whatever message is currently selected, save the list of items in there
for(int k=0; k<=ui->Milist->count()-1; k++)
items[ui->Mmlist->currentRow()][k] = ui->Milist->item(k)->text();
}
这样可以正常工作,但是很多时候用户忘记单击“保存”,然后再转到“消息”列表中的其他项目。我希望我的程序能够自动保存&#34;当用户切换到消息列表中的其他项目时。
我知道名单中有一个名为currentRowChanged()的信号,但是当我尝试在currentRowChanged()之后启动保存功能时,它会保存&#34;所有内容都是SWITCHED TO的项目,而不是SWITCHED FROM项目。
有没有办法将所有信息保存到&#34;之前选择的&#34;消息列表中的项目?
编辑:此外,我希望它再次点击列表中的相同项目时保存信息。从而使之前被选中的&#34;列出相同的项目。
感谢您的时间。