• 3436阅读
  • 1回复

关于信号与槽 [复制链接]

上一主题 下一主题
离线banyibanyi
 

只看楼主 倒序阅读 楼主  发表于: 2010-02-25
#include <QApplication>
#include <QWidget>
#include <QLabel>
#include <QComboBox>
#include <QVBoxLayout>
#include <QIcon>

int main(int argc,char *argv[])
{

    QApplication app(argc,argv);

    QWidget *window = new QWidget;
    window->setWindowTitle("QComboBox");
    window->resize(300,200);

    QComboBox *comboBox = new QComboBox;
    comboBox->setEditable(true);
    comboBox->insertItem(0,QIcon( ":/up.png" ),"YANGWEI");
    comboBox->insertItem(1,QIcon(":/forward"),"YANGWEI1");

    QLabel *label = new QLabel("label");

    QVBoxLayout *layout = new QVBoxLayout;
    layout->addWidget(comboBox);
    layout->addWidget(label);

    //为什么加上QComboBox就不好用了?
   // QObject::connect(comboBox,SIGNAL(QComboBox::activated(const QString &)),label,SLOT(setText(const QString &)));
    
    QObject::connect(comboBox,SIGNAL(activated(const QString &)),label,SLOT(setText(const QString &)));



    window->setLayout(layout);
    window->show();
    return app.exec();
}

这里的activated不是QComboBox的吗?
离线xtfllbl

只看该作者 1楼 发表于: 2010-02-25
你不需要加qcombobox,qt也知道是他,因为你钱面已经指示他发信号的对象是qcombobox了,不需要多此一举
上海欢迎您
快速回复
限100 字节
 
上一个 下一个