我已经在 my 中声明了三个插槽,mainwindow.h并在实现文件中给出了它们的定义。这是 MainWindow 类:
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
signals:
void nextImage(int direction);
private slots:
void updateImage(void);
void cameraControl(void);
void cameraStart(void);
private:
Ui::MainWindow *ui;
CMUCamera *camera;
ImageProcessing *process;
RenderImage *renderImage;
bool saveImgFlg;
QString path;
};
Run Code Online (Sandbox Code Playgroud)
转到 mainwindow.ui,我为用户界面设计了一个菜单栏。QAction一共有三个,如下图所示:

然后,我进行信号和插槽编辑。但是头文件中定义的槽(udpateImage,cameraStart和cameraControl)并没有出现在槽列表中,如下图所示:
我在这里错过了其他任何步骤还是我做错了什么?还需要注意QMainWindow的是,这些插槽应该出现在哪些框架中,我猜也没有显示在列表中。
我知道为什么会这样。要添加这些自定义插槽,除了在头文件和实现文件中定义它们之外,还应该通过右键单击 ,QMainWindow转到change signals and slots并在插槽面板中手动添加它们来预先添加它们。这种方式比编码信号和时隙更简单。
这里报告了类似的问题:我的插槽没有出现在信号插槽编辑器中
| 归档时间: |
|
| 查看次数: |
1205 次 |
| 最近记录: |