【问题标题】:I can't connect KAction to slot on KMainWindow我无法将 KAction 连接到 KMainWindow 上的插槽
【发布时间】:2010-09-23 20:15:12
【问题描述】:

我有一个 KMainWindow:

//file.h
class MainWindow: public KMainWindow {
public:
    MainWindow(QWidget *parent = 0);
...
...
...

private slots:
    void removeClick();

//file.cpp
MainWindow::MainWindow(QWidget *parent) :
KMainWindow(parent) {}

void MainWindow::removeClick() 
    {
    std::cout << "Remove" << std::endl;
    }

我可以正确编译它,但是当我执行时我得到了消息

Object::connect: No such slot KMainWindow::removeClick()

谁能帮帮我?

【问题讨论】:

    标签: c++ qt connect kde


    【解决方案1】:

    您忘记了 Q_OBJECT 宏。

    class MainWindow: public KMainWindow 
    {
        Q_OBJECT
    
    public:
        // [snip]
    }
    

    【讨论】:

      【解决方案2】:

      使用 KXmlGuiWindow 而不是 KMainWindow 和 Q_OBJECT 宏解决了

      【讨论】:

        猜你喜欢
        • 2012-09-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多