Qt 기초 학습(4)-----드롭다운 목록 상자(조합 상자)의 QComboBox

1826 단어 dialogqtSignal
//mydialog.h
#ifndef MYDIALOG_H
#define MYDIALOG_H
#include <QDialog>
class QComboBox;
class MyDialog : public QDialog
{
  Q_OBJECT
public:
  explicit MyDialog(QWidget *parent = 0);
signals:
public slots:
  void onChanged(int index);
private:
  QComboBox *comboBox;
};
#endif // MYDIALOG_H
//mydialog.cpp
#include "mydialog.h"
#include <QtGui/QComboBox>
#include <QtGui/QMessageBox>
#include <QtGui/QIcon>
MyDialog::MyDialog(QWidget *parent) :
  QDialog(parent)
{
  comboBox = new QComboBox(this);
  comboBox->resize(100, 20);
  QIcon icon1(":/new/ico/images/ftp.ico");
  comboBox->addItem(icon1, "ftp");

  QIcon icon2(":/new/ico/images/www.ico");
  comboBox->addItem("www");
  // 
  comboBox->setItemIcon(1, icon2);
  //   currentIndexChanged(int index)   
  connect(comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(onChanged(int)));
  this->resize(100, 100);
  this->setWindowTitle("QComboBoxDemo");
}
void MyDialog::onChanged(int index)
{
  QMessageBox::warning(this, "Message", comboBox->itemText(index), QMessageBox::Ok);
}

 
//main.cpp

#include <QtGui/QApplication>

#include "mydialog.h"

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

{

  QApplication a(argc, argv);

  MyDialog dialog;

  dialog.show();

  return a.exec();

}

 
리소스 파일 캡처:
 
프로그램 실행 캡처:

좋은 웹페이지 즐겨찾기