代码之家  ›  专栏  ›  技术社区  ›  Szőke Szabolcs

将QComboBox::currentIndexChanged(int)连接到QSignalMapper::map()

  •  4
  • Szőke Szabolcs  · 技术社区  · 9 年前

    我正试图找出如何在Qt5中实现这一点:

    connect(qcombobox, SIGNAL(currentIndexChanged(int),
            qsignalmappe, SLOT(map()));
    

    我试过了:

    connect(comboBox, static_cast<void(QComboBox::*)(int) (&QComboBox::currentIndexChanged),
            this->signalMapper, &QSignalMapper::map);
    

    但是编译器抱怨没有匹配的参数。我知道QSignalMapper::map()信号没有参数,但我不知道它是如何使用旧语法的。

    1 回复  |  直到 9 年前
        1
  •  5
  •   Shailesh Pandey    9 年前

    试试这个,对我有用

     connect(comboBox,static_cast<void (QComboBox::*)(int index)>(&QComboBox::currentIndexChanged),signalMapper,static_cast<void (QSignalMapper::*)()>(&QSignalMapper::map));