class genericTaskList : public QListWidget
{
Q_OBJECT
public:
QListWidgetItem *defaultText;
genericTaskList (QWidget *parentWidget)
{
setParent (parentWidget);
setFixedSize (445, 445);
defaultText = new QListWidgetItem ("Double click here to compose the task");
defaultText->setFlags (defaultText->flags () | Qt :: ItemIsEditable);
insertItem (0, defaultText);
QObject :: connect (this, SIGNAL (currentRowChanged (int)), this, SLOT (addDefaultText (int)));
}
public slots:
void addDefaultText (int rr)
{
std::cout << "\ndsklfjsdklfhsdklhfkjsdf\n";
insertItem (++rr, defaultText);
}
};
该代码应在每次编辑行时发出一个信号。
在构造函数中调用“ insertItem ”后,发出信号。
但是,仅此而已。此后再也不会发出-无论我编辑该行多少次。
我想念什么?
最佳答案
currentRowChanged
表示行选择已更改,而不是行内容。也许您想改用currentTextChanged
或itemChanged
。
在QT文档中重用“当前”和“更改”一词非常令人困惑。