لا يمكنني الاتصال KAction إلى فتحة على KMainWindow

StackOverflow https://stackoverflow.com/questions/315393

  •  10-07-2019
  •  | 
  •  

سؤال

ولدي 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