我有一個小程序來顯示設備和捕獲任何數據包,用GUI.I使用QT設計器和Netbeans 6.9來繪製圖形用戶界面,但問題出現時,當我嘗試實現一個信號/slot.Basically當選擇組合框時,QlineEdit會顯示所選設備的MAC地址。 錯誤:QT4/C++:沒有這樣的信號問題
Object::connect: No such signal QComboBox::selectedDev(int) in MainGUI.cpp:21
Object::connect: (sender name: 'comboBox')
Object::connect: (receiver name: 'MYMACBOX')
MainGUI.h
#ifndef _MAINGUI_H
#define _MAINGUI_H
#include "ui_MainGUI.h"
class MainGUI : public QDialog {
Q_OBJECT
public:
MainGUI();
virtual ~MainGUI();
void displayDevices();
void selectedValue();
public slots:
void showmac(int);
signals:
void selectedDev(int);
private:
Ui::MainGUI widget;
};
MainGUI.cpp
#include "MainGUI.h"
#include "pcapCapture.h"
#include <pcap.h>
#include <iostream>
MainGUI::MainGUI() // constructor
{
widget.setupUi(this);
//show devices here
QObject::connect(widget.comboBox,SIGNAL(selectedDev(int)),widget.MYMACBOX,SLOT(showmac(int)));
}
void MainGUI::showmac(int value)
{
//show MAC address here
}
我不知道這裏whts的問題,我嘗試不同的方法來解決這個問題,但他們不會工作。對於任何明顯的錯誤的原因,我還是QT4(和libpcap)的新手。
感謝您的快速回復!我不知道QcomboBox,Qlineedit有他們自己的一套信號,我想我的selectedDev是多餘的。 – user542966 2010-12-15 09:09:16
@ user542966 - 你剛進入Qt的世界,很快所有這些對你來說都會變得很自然。你可以選擇一個令人驚歎的框架。祝你的項目好運! – Raphael 2010-12-15 10:12:48