初探Qt

Qt例程-1(Application Example)

1.简介

看的第一个Qt例程,也是写的第一个博客。如果有什么错误,谢谢指出。
这是一个widgets程序例程,包括文字编辑以及文件的打开和保存。

2.main.cpp函数

#include <QApplication>
#include <QCommandLineParser>
#include <QCommandLineOption>

#include "mainwindow.h"

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

    QApplication app(argc, argv);
    QCoreApplication::setOrganizationName("QtProject");
    QCoreApplication::setApplicationName("Application Example");
    QCoreApplication::setApplicationVersion(QT_VERSION_STR);
    QCommandLineParser parser;
    parser.setApplicationDescription(QCoreApplication::applicationName());
    parser.addHelpOption();
    parser.addVersionOption();
    parser.addPositionalArgument("file", "The file to open.");
    parser.process(app);

    MainWindow mainWin;
    if (!parser.positionalArguments().isEmpty())
        mainWin.loadFile(parser.positionalArguments().first());
    mainWin.show();
    return app.exec();
}

1.两个命令行相关的头函数:QCommandLineParser和QCommandLineOption。前者是用于命令行解析,提示程序的命令参数、格式、以及解析方式等信息。后者用于设置程序运行时,命令行中可以执行的选项。
主函数中相关代码包括定义了一个QCommandLineParser对象parser,并通过parser调用了若干设置函数和解析函数。具体含义如下:

	//设置命令行中的产品描述,这里的参数为前面代码所设置的产品名称。
	parser.setApplicationDescription(QCoreApplication::applicationName());
	//在命令行中添加帮助选项及使用说明
	parser.addHelpOption();
	//在命令行中添加版本选项以及使用说明
	parser.addVersionOption();
	//定义了产品的附加参数,这里的两个参数分别为附加参数的名字和其描述,
	//规定其出现在帮助部分参数之后
	parser.addPositionalArgument("file", "The file to open.");
	//用于解析app中的命令行参数
	parser.process(app);
	//返回位置参数列表。
	//在main函数中,如果命令行中有输入位置参数,则加载第一个参数对应的文件,否则不加载。
	parser.positionalArguments()

2.Q_INIT_RESOURCE(application):用于加载关键字为application的.qrc资源文件。
3.三个与QSettings类相关的QCoreApplication类函数(QSettings类提供了持久的跨平台应用程序设置,创建对象时,必须指定公司或组织名称以及产品名称。)。其分别定义了组织和产品名称以及Qt版本信息,以便于其后代码创建QSettings对象。代码具体含义如下:

    //设置组织名称
    QCoreApplication::setOrganizationName("QtProject");
    //设置产品名称
    QCoreApplication::setApplicationName("Application Example");
    //设置版本信息,QT_VERSION_STR是Qt库中的宏定义,内容为当前Qt版本。
    QCoreApplication::setApplicationVersion(QT_VERSION_STR);

4.main函数总结:整个main函数除了实现常见的程序框架外,还设置了程序的某些相关信息,并通过使用QCommandLineParser类对象来判断是否通过命令行中传入的文件参数来打开对应文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值