我正在使用Qt KDE Necessitas项目。我在 Qt Creator 中构建了一个项目,并且正在将其安装apk
在模拟器 API-15 上(也在 API-10 上进行了测试)。
以下代码设置为在QLineEdit
单击按钮时清除两个不同对象的文本,但事实并非如此。随机地,只有两个QLineEdit
对象中的一个被清除。
主窗口.h:
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
public slots:
void slotClear();
private:
QLineEdit* line1;
QLineEdit* line2;
//...
};
主窗口.cpp:
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
QVBoxLayout* mainLayout = new QVBoxLayout;
QFormLayout* form = new QFormLayout;
line1 = new QLineEdit;
form->addRow(tr("Line 1: "), line1);
line2 = new QLineEdit;
form->addRow(tr("Line 2:"), line2);
QPushButton* button = new QPushButton;
mainLayout->addLayout(form);
mainLayout->addWidget(button);
QWidget* centralWid = new QWidget(this);
centralWid->setLayout(mainLayout);
this->setCentralWidget(centralWid);
connect(button, SIGNAL(clicked()), this, SLOT(slotClear()));
}
void MainWindow::slotClear()
{
line1->clear();
line2->clear();
}
//...
调用该函数QLineEdit::setText("")
会产生相同的结果。此外,将clicked()
按钮的信号直接连接到clear()
插槽的插槽QLineEdit
没有任何效果。
我很久没有在 Qt 中编程了,所以我不确定我是否做错了什么。是否有人看到需要纠正某些内容才能从 BOTH QLineEdits 中清除文本?我不确定这是 Qt 本身还是 Qt Necessitas 独有的。任何投入将不胜感激。
编辑
我还刚刚注意到,在一行中输入文本,切换到另一行并在那里输入文本,然后切换回原始行会导致单击该字段后原始文本被删除(注意,从未单击过该按钮) . 我认为这是一个非常明确的迹象,表明正在发生一些时髦的事情。
编辑 2
在 KDE中注册为错误