QT4:创建主窗口应用程序 ,非 对话框应用成

原创 2007年10月09日 17:35:00


1,用QT Desingner设计并实现 窗口界面 ,这里主要是体验窗口程序的框架 ,所以不做任何的界面修改使用默认的界面。
2,保存ui界面到ma目录下 ,名字为:ma.ui
3,进入ma目录 :cd  ~/ma
4,生成项目文件 :qmake -project
5,生成 makefile文件: qmake ma.pro
6,make(此时还没有main文件,运行make主要是为了把 ui文件转换成 .h文件)
7,创建 main.cpp
8,输入如下代码 :
 #include "ui_ma.h" (把界面代码包含进来)
#include <QtGui/QMainWindow>
#include <QtGui/QApplication>
#include <QtGui/QWidget>
int main(int argc,char *argv[])
{
 QApplication app(argc,argv);
 QMainWindow w;                
 Ui::MainWindow mainw;
 mainw.setupUi(&w);
 w.show();
 return app.exec();
}
9,保存后 ,执行make命令
10,执行新生成的 ma可执行文件你就见到主界面了,开心吧!
11,附uic身成的ui_ma.h文件的源代码
/********************************************************************************
** Form generated from reading ui file 'ma.ui'
**
** Created: Tue Oct 9 16:13:18 2007
**      by: Qt User Interface Compiler version 4.3.2
**
** WARNING! All changes made in this file will be lost when recompiling ui file!
********************************************************************************/

#ifndef UI_MA_H
#define UI_MA_H

#include <QtCore/QVariant>
#include <QtGui/QAction>
#include <QtGui/QApplication>
#include <QtGui/QButtonGroup>
#include <QtGui/QMainWindow>
#include <QtGui/QMenu>
#include <QtGui/QMenuBar>
#include <QtGui/QPushButton>
#include <QtGui/QStatusBar>
#include <QtGui/QWidget>

class Ui_MainWindow
{
public:
    QAction *actionOpen;
    QAction *action_2;
    QAction *actionExit;
    QWidget *centralwidget;
    QPushButton *pushButton;
    QMenuBar *menubar;
    QMenu *menu_File;
    QMenu *menu_About;
    QStatusBar *statusbar;

    void setupUi(QMainWindow *MainWindow)
    {
    if (MainWindow->objectName().isEmpty())
        MainWindow->setObjectName(QString::fromUtf8("MainWindow"));
    MainWindow->resize(519, 341);
    actionOpen = new QAction(MainWindow);
    actionOpen->setObjectName(QString::fromUtf8("actionOpen"));
    action_2 = new QAction(MainWindow);
    action_2->setObjectName(QString::fromUtf8("action_2"));
    actionExit = new QAction(MainWindow);
    actionExit->setObjectName(QString::fromUtf8("actionExit"));
    centralwidget = new QWidget(MainWindow);
    centralwidget->setObjectName(QString::fromUtf8("centralwidget"));
    pushButton = new QPushButton(centralwidget);
    pushButton->setObjectName(QString::fromUtf8("pushButton"));
    pushButton->setGeometry(QRect(60, 20, 80, 27));
    MainWindow->setCentralWidget(centralwidget);
    menubar = new QMenuBar(MainWindow);
    menubar->setObjectName(QString::fromUtf8("menubar"));
    menubar->setGeometry(QRect(0, 0, 519, 25));
    menu_File = new QMenu(menubar);
    menu_File->setObjectName(QString::fromUtf8("menu_File"));
    menu_About = new QMenu(menubar);
    menu_About->setObjectName(QString::fromUtf8("menu_About"));
    MainWindow->setMenuBar(menubar);
    statusbar = new QStatusBar(MainWindow);
    statusbar->setObjectName(QString::fromUtf8("statusbar"));
    MainWindow->setStatusBar(statusbar);

    menubar->addAction(menu_File->menuAction());
    menubar->addAction(menu_About->menuAction());
    menu_File->addAction(actionOpen);
    menu_File->addSeparator();
    menu_File->addAction(action_2);
    menu_File->addAction(actionExit);

    retranslateUi(MainWindow);

    QMetaObject::connectSlotsByName(MainWindow);
    } // setupUi

    void retranslateUi(QMainWindow *MainWindow)
    {
    MainWindow->setWindowTitle(QApplication::translate("MainWindow", "MainWindow", 0, QApplication::UnicodeUTF8));
    actionOpen->setText(QApplication::translate("MainWindow", "open", 0, QApplication::UnicodeUTF8));
    action_2->setText(QApplication::translate("MainWindow", "Save", 0, QApplication::UnicodeUTF8));
    actionExit->setText(QApplication::translate("MainWindow", "Exit", 0, QApplication::UnicodeUTF8));
    pushButton->setText(QApplication::translate("MainWindow", "&Ok", 0, QApplication::UnicodeUTF8));
    menu_File->setTitle(QApplication::translate("MainWindow", "&File", 0, QApplication::UnicodeUTF8));
    menu_About->setTitle(QApplication::translate("MainWindow", "&About", 0, QApplication::UnicodeUTF8));
    } // retranslateUi

};

namespace Ui {
    class MainWindow: public Ui_MainWindow {};
} // namespace Ui

#endif // UI_MA_H

vs2008 创建对话框MFC应用程序调试c++代码

android 调用了不少c++生成的.so库。有时怀疑库出了问题。android方面调用的库,调试基本调试不了。所以就用vs2008 创建对话框MFC应用程序调试c++代码。以前也有以调试,久了又快...
  • qq_16064871
  • qq_16064871
  • 2016年09月22日 19:37
  • 2349

<MFC>模态对话框和非模态对话框的创建弹出

一、模态对话框的创建及显示 1、Windows对话框分为两类:模态对话框和非模态对话框。     模态对话框:当它弹出后,本应用程序其他窗口将不再接受用户输入,只有该对话框响应用户输入,在对它进...
  • xieziwei2008
  • xieziwei2008
  • 2013年10月16日 16:10
  • 1447

跟我一起玩Win32开发(14):用对话框作为主窗口

前面我们在编写Win32应用程序的思路都是: 1、设计窗口类。2、注册窗口类。3、创建窗口。…… 然而,当我们接触控件以后, 会发现一个问题,我们在窗口上放置控件实在不好弄,而资源中的对话框具有图...
  • tcjiaan
  • tcjiaan
  • 2013年02月03日 16:44
  • 24015

WebKit -- qt4 的应用程序

记得以前学习 VB/Delphi/MFC 时,开始的例子一般是在窗口上有个按钮和文本标签。点击按钮时,文本标签上会显示一段话。这样的例子在 QT 里是怎么做呢?在 QT 里就是 QLabel 和 QP...
  • Mac_cm
  • Mac_cm
  • 2011年07月28日 16:27
  • 1274

(转)开发Qt4应用程序时几种常见的做法

在开发Qt4应用程序时,有几种常见的做法。 1.全部采用手写代码,在命令行下完成编译和运行 这种方式是最基础、最基本的,使用它的感觉有点像练武术时的扎马步,一招一式非常清楚。它最锻炼开发者的技能,...
  • CLQ_1987
  • CLQ_1987
  • 2011年07月29日 16:13
  • 342

qtopia2.0桌面环境和qt4应用程序共存の法

开发板:友善之臂smart210(同样适用其他开发板) linux内核:linux3.0.8在arm开发板上开发目前只有qtopia2.0的桌面环境,因此进行其qt4程序的开发需要首先关闭掉qtop...
  • u010744711
  • u010744711
  • 2015年09月16日 08:57
  • 636

6410使用qt4应用程序编译方法

  • 2015年06月04日 08:59
  • 1.75MB
  • 下载

Windows下Qt4应用程序开发环境搭建

  • 2015年05月13日 22:39
  • 1.02MB
  • 下载

Qt4(++图形用户界面应用程序框架)编程书籍

  • 2009年05月18日 00:57
  • 13.36MB
  • 下载

MFC应用程序中处理消息的顺序,创建窗口的过程关闭窗口的顺序(非模态窗口),打开模式对话框的函数调用顺序

MFC应用程序中处理消息的顺序 1.AfxWndProc()      该函数负责接收消息,找到消息所属的CWnd对象,然后调用AfxCallWndProc 2.AfxCallWndProc() ...
  • chenlycly
  • chenlycly
  • 2012年06月18日 18:55
  • 655
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:QT4:创建主窗口应用程序 ,非 对话框应用成
举报原因:
原因补充:

(最多只允许输入30个字)