QT:图标 中文等
来源:互联网 发布:香港有淘宝网吗 编辑:程序博客网 时间:2024/05/11 11:19
1. 应用程序图标
在Qt助手(assistant.exe)搜索关键字"Setting the Application Icon"就可以看到在各种平台设置Qt程序图标的方法。在windows下:
找个ICO文件,保存到一个程序文件夹下的某个地方,如:~/images/setup.ico下
用记事本创建一个.rc文件,文件名称随意,如:ico.rc,里面只写一句话 IDI_ICON1 ICON DISCARDABLE "images/setup.ico"
在工程文件 .pro 中加入一行 RC_FILE= ico.rc
程序重新编译后,生成的.exe就有图标了。
2. 程序中引用图标文件
用记事本在应用程序下建立一个.qrc 文件,名称随意,如:pngsfile.qrc ,写入如下内容
<!DOCTYPE RCC><RCC version="1.0"> <qresource> <file>qt_zh_CN.qm</file> <file>images/add.png</file> <file>images/modify.png</file> <file>images/clear.png</file> <file>images/over.png</file> <file>images/agather.png</file> <file>images/delete.png</file> </qresource></RCC>
在工程文件 .pro 中加入一行 RESOURCES = pngsfile.qrc
程序中引用时,比如设置窗体的图标:
this->setWindowIcon(QIcon(":/images/history.png"));
3. QT中显示中文
在qt的文件下找到qt_zh_CN.qm文件,复制到应用程序文件夹下,并添加到资源文件pngsfile.qrc中。
在main中添加引用,下面是添加后的样子:
#include <QApplication>#include "myd.h"#include <QTextCodec> //qt支持中文#include <QTranslator> //自动翻译中文int main(int argc, char *argv[]){ //qt支持中文 QTextCodec::setCodecForTr(QTextCodec::codecForName(QTextCodec::codecForLocale()->name())); QTextCodec::setCodecForLocale(QTextCodec::codecForName(QTextCodec::codecForLocale()->name())); QTextCodec::setCodecForCStrings(QTextCodec::codecForName(QTextCodec::codecForLocale()->name())); QApplication a(argc, argv); //自动翻译中文 QTranslator oTranslator; oTranslator.load("qt_zh_CN.qm"); a.installTranslator(&oTranslator); myd m; m.show(); return a.exec();}
注意:
如果编译的时候,出现 “当执行构建步骤 'Make'时” ,没有更多地提示,多半是.pro文件哪里写错了。
下面是修改后的样子:
3. 转换.ui为.h文件
在CMD窗口中切换到ui文件所在的文件夹,执行
D:\work\mypython>uic -o hello.h myform.ui
没有错误提示的话,生成hello.h头文件
引用的文件为 mainwindow.h mainwondow.cpp
#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>#include <QDial>#include "hello.h"class MainWindow : public QWidget{ Q_OBJECT public: MainWindow(QWidget *parent = 0); ~MainWindow();private: //类的名称myForm 和hello.h中,namespace Ui {}定义的对应 Ui::myForm ui;};#endif // MAINWINDOW_H
cpp文件
#include "mainwindow.h"MainWindow::MainWindow(QWidget *parent) : QWidget(parent){ ui.setupUi(this); //引用图形控件 ui.lineEdit->setText(tr("name"));}MainWindow::~MainWindow(){ }
- QT:图标 中文等
- QT编程中如何给按钮等控件加载图标以及QT编程中使用中文的问题
- Qt任务栏,托盘栏,托盘菜单,图标等操作
- QT图标
- Qt图标
- QT图标
- 【Qt移植到linux】问题 qt界面无法输入中文,中文不显示,乱码等问题
- Qt显示中文(包括QMessageBox、文本框右键菜单等)
- Qt之中文显示(QMessageBox、QLineEdit右键菜单等)
- Qt之中文显示(QMessageBox、QLineEdit右键菜单等)
- Qt之中文显示(QMessageBox、QLineEdit右键菜单等)
- Qt之中文显示(QMessageBox、QLineEdit右键菜单等)
- 只需一句话解决qt中文乱码问题,等验证
- QT中的buttonbox、QMessageBox等默认控件如何显示中文
- Qt4、Qt5等Qt版本解决中文乱码问题
- 2011-10-18 17:25 Qt 提取文件(exe, dll等)中的图标icon
- qt关于一些托盘,任务栏图标隐藏,无边框等的一些窗口的效果
- Qt之设置应用图标、中文显示和窗口大小设置
- Toad for Oracle 11
- 2012 Multi-University Training Contest 2
- Amazon Simple Storage Service(Amazon S3)
- 移植zlib1.1.4
- 如何制作和使用Jffs2文件系统
- QT:图标 中文等
- 程序员的十个等级 你属于哪个等级
- 一个IT技术资料下载的网站
- permission denied 解决办法
- 将一个字符串中的字符替换成另一个字符串
- VS2008如何自动添加消息映射 .
- {{Javascript}}函数表达式和函数声明
- Eval ToString 日期格式化,带NULL的。
- SQL Server 初探——数据库简介