我有一个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()

有人能帮助我吗?

有帮助吗?

解决方案

您忘记了Q_OBJECT宏。

class MainWindow: public KMainWindow 
{
    Q_OBJECT

public:
    // [snip]
}

其他提示

使用KXmlGuiWindow代替KMainWindow和Q_OBJECT宏

解决

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top