为什么显示组合框的弹出功能在qt中不起作用?



我是qt的新手,只是尝试了comboBox的一些功能。 我写了以下代码

ui->comboBox->addItem("mark");
ui->comboBox->count();
ui->showPopup();

在项目的主窗口(( 中 如果我编写以下代码,此代码已将标记添加到组合框

ui->comboBox->addItem("mark");

但是 count(( 和 showPopup(( 不起作用,并且出现了以下错误。 类 Ui::MainWindow 没有名为 show Popup 的成员。

正如你在qt文档中看到的那样 https://doc.qt.io/qt-5/qcombobox.html#showPopup

showPopup 是在组合框中定义的方法,而不是在 mainWindows 类中定义的方法

所以你需要做

ui->comboBox->showPopup(); 

而不是:

ui->showPopup();

另一方面,这里定义的函数 count(( https://doc.qt.io/qt-5/qcombobox.html#count-prop 实际上返回组合框中的项目数

所以当你这样做时

ui->comboBox->count();

并忽略返回的值,好吧..它只是在应用程序中丢失了...

尝试像这样喜剧

qDebug() << "Elements in CB: " << ui->comboBox->count();

因此,您可以在终端中打印为调试消息...

最新更新