本人对QT知之甚少, 一些简单的问题都要靠朋友帮助了。 界面我只会用QT designer画, 然后用UIC自动生成代码。 但问题是自动生成的代码与平常大家自己写的代码不太一样, 举一个简单的例子, 有两个Dialog窗口, 一个primay, 一个minor, Primary中有一个Button, 发出Click()后, 就会调出minor窗口。 下面是自动生成的代码, 大侠就不要笑话了!
primary.h -->primary.ui
QT_BEGIN_NAMESPACE
class Ui_maindlg
{
public:
QPushButton *loadbtn;
void setupUi(QDialog *maindlg)
{
if (maindlg->objectName().isEmpty())
maindlg->setObjectName(QString::fromUtf8("maindlg"));
maindlg->resize(400, 300);
loadbtn = new QPushButton(maindlg);
loadbtn->setObjectName(QString::fromUtf8("loadbtn"));
loadbtn->setGeometry(QRect(260, 240, 90, 28));
retranslateUi(maindlg);
QObject::connect(loadbtn, SIGNAL(clicked()), maindlg, SLOT(display())); display()是将要调出minor窗口的槽函数!
QMetaObject::connectSlotsByName(maindlg);
} // setupUi
void retranslateUi(QDialog *maindlg)
{
maindlg->setWindowTitle(QApplication::translate("maindlg", "Dialog", 0, QApplication::UnicodeUTF8));
loadbtn->setText(QApplication::translate("maindlg", "ok", 0, QApplication::UnicodeUTF8));
Q_UNUSED(maindlg);
} // retranslateUi
};
namespace Ui {
class maindlg: public Ui_maindlg {};
} // namespace Ui
QT_END_NAMESPACE
这个是被调出的窗口,头文件!
minor.h -->minor.ui
/********************************************************************************
** Form generated from reading ui file 'minor.ui'
**
** Created: Tue Jan 5 09:48:48 2010
** by: Qt User Interface Compiler version 4.4.0
**
** WARNING! All changes made in this file will be lost when recompiling ui file!
********************************************************************************/
#ifndef MINOR_H
#define MINOR_H
#include <QtCore/QVariant>
#include <QtGui/QAction>
#include <QtGui/QApplication>
#include <QtGui/QButtonGroup>
#include <QtGui/QDialog>
QT_BEGIN_NAMESPACE
class Ui_sencond
{
public:
void setupUi(QDialog *sencond)
{
if (sencond->objectName().isEmpty())
sencond->setObjectName(QString::fromUtf8("sencond"));
sencond->resize(400, 300);
retranslateUi(sencond);
QMetaObject::connectSlotsByName(sencond);
} // setupUi
void retranslateUi(QDialog *sencond)
{
sencond->setWindowTitle(QApplication::translate("sencond", "Dialog", 0, QApplication::UnicodeUTF8));
Q_UNUSED(sencond);
} // retranslateUi
};
namespace Ui {
class sencond: public Ui_sencond {};
} // namespace Ui
QT_END_NAMESPACE
#endif // MINOR_H
小弟我对C++也是知之皮毛, 所以请大家帮帮小弟,在哪里定义这个display()函数, 在哪里连接??
还有就是这个自动生成的头文件,有什么特别注意的地方?
请大家多多吝教!!!