首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >连接QPushButton和QComboBox

连接QPushButton和QComboBox
EN

Stack Overflow用户
提问于 2015-07-23 19:48:59
回答 2查看 612关注 0票数 0

如何连接QPushButtonQComboBox

我创建了一个槽,它接受两个参数,一个指向QComboBox的指针和所选项目的索引:

代码语言:javascript
复制
void modificaExp::eliminaExp(QComboBox *combo,int value)
{
   ......
    combo->removeItem(value);
   ....
}

最宽的有:

代码语言:javascript
复制
QComboBox* combo=new QComboBox();
combo->addItem("ciao1");
combo->addItem("ciao44");
combo->addItem("ciao222");
combo->addItem("ciao555");

QPushButton* delButton=new QPushButton();
delButton->setText("delete");

   connect(delButton, SIGNAL(clicked()), this, SLOT( eliminaExp(combo,combo->currentIndex() )));

因此,当我单击delButton时,元素会停留在那里。我认为connect命令有问题,特别是我认为插槽没有被调用。

EN

回答 2

Stack Overflow用户

发布于 2015-07-23 19:57:49

您确定需要这个带有两个参数的插槽吗?

另一种简单的方法:

代码语言:javascript
复制
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent)
{
    setupUi(this);

    connect(deleteButton, SIGNAL(clicked(bool)), this, SLOT(deleteSlot()));

}

void MainWindow::deleteSlot()
{
    comboBox->removeItem(comboBox->currentIndex());
}
票数 1
EN

Stack Overflow用户

发布于 2015-07-23 20:05:41

  1. 插槽的类型应该与信号

相同,参数的数量应该等于或少于在标题modificaexp.hprivate中声明QComboBox和QPushButton对象的数量: QComboBox* modificaexp.hprivate;QPushButton*

combo=new QComboBox();eliminaExp()));

  • Modify ->addItem(“ciao44”);combo>addItem(“ciao222”);combo>addItem(“ciao222”);combo>addItem(“ciao555”);delButton=new QPushButton();delButton->setText(“delButton”);connect(delButton,SIGNAL(delButton=new()),this,SLOT(点击插槽

documentation修改the::eliminaExp(){->removeItem(combo>currentIndex());}

  • 参考Qt信号槽void
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31586491

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档