• 8342阅读
  • 5回复

【提问】写在一起.cpp如何写成头文件,源文件,主程序文件 [复制链接]

上一主题 下一主题
离线popechen
 

只看楼主 倒序阅读 楼主  发表于: 2005-11-25
请教:下面的程序怎样写成 .h  exit.cpp 和main.cpp三部分,谢谢啦

main.cpp
#include<qapplication.h>
#include<qpushbutton.h>
#include<qfont.h>
int main(int argc,char**argv)
{
QApplication a(argc,argv);
QPushButton exit("退出",0);
exit.resize(100,55);
exit.setFont(QFont("Simsun",18,QFont::Bold));
QObject::connect(&exit,SIGNAL(clicked()),&a,SLOT(quit()));
a.setMainWidget(&exit);
exit.show();
return a.exec();

}
重发了一边,不知斑主这样行不行~~
本人非常热爱这个论坛,希望大家能帮助我~
离线XChinux

只看该作者 1楼 发表于: 2005-11-25
查看本版置顶贴<Qt4学习初步>
其实就是从QWidget/QDialog/QMainWindow继承一下,然后在这个部件里,加入你想要的东西,像你的例子里,就是就加入一个PushButton,设置一下布局,再把信号与槽连接上,
在main函数里,则是使用这个你继承过来的类来生成实例,再show或者exec一下(非模式与模式)
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线running
只看该作者 2楼 发表于: 2005-11-25
///////////////////////////////////////////////////////////////////
exit.h
//////////////////////////////////////////////////////////////////
#include<qapplication.h>
#include<qpushbutton.h>
#include <qwidget.h>

class MyMainWindow: public QMainWindow {
? Q_OBJECT
public:
? MyMainWindow();
private slots:
? quit();
private:
? QPushButton *exitButton;
};
///////////////////////////////////////////////////////////////////
exit.cpp
///////////////////////////////////////////////////////////////////
#include<qfont.h>
#include "exit.h"
void MyMainWindow::quit()
{
}

MyMainWindow::MyMainWindow()
{
exitButton=new QPushButton(this);
exitButton->setText("exit"); ?
exitButton.setFont(QFont("Simsun",18,QFont::Bold));
QObject::connect(&exitButton,SIGNAL(clicked()),&a,SLOT(quit()));
}
////////////////////////////////////////////////////////////
main.cpp
////////////////////////////////////////////////////////////
#include "exit.h"

int main(int argc,char**argv)
{
QApplication a(argc,argv);
a.setMainWidget(&exitButton);
exitButton.show();
return a.exec();
}
离线popechen

只看该作者 3楼 发表于: 2005-11-25
非常感谢,我没编过程序,现在项目要求我学qt ,我想学好它,但看了很久,还是不明白,痛苦中~特别对什么时候用什么类.
离线popechen

只看该作者 4楼 发表于: 2005-11-25
为什么在头文件中要对quit()声明在exit.cpp对其实现而在原来写在一起是程序中直接
.....
exit.resize(100,55);
exit.setFont(QFont("Simsun",18,QFont::Bold));
QObject::connect(&exit,SIGNAL(clicked()),&a,SLOT(quit()));
a.setMainWidget(&exit);
...
可以应用&a,SLOT(quit())
离线running
只看该作者 5楼 发表于: 2005-11-25
不好解释 只是说的是规定吧 或者是规范
另个quit()是个SLOT,所以肯定要在SLOT中申明的,这是QT的SIGNAL和SLOT机制决定的
而且申明SLOT,别忘了加O_OBJECT
快速回复
限100 字节
 
上一个 下一个