自我总结:QT的国际化编程

1、用QT Creator自动生成 QT GUI Application。例如项目名为:sale.pro

2、修改sale.pro文件,在其中加入TRANSLATIONS += sale.ls。

3、运行lupdate sale.pro命令,这一步生成sale.ls文件。

4、运行linguist sale.ls命令,对字符串进行翻译。

5、翻译完成后,点"File-release(文件-发布)"命令生成sale.qm文件。

6、如果有多种语言,例如有英语及汉语,则可以将sale.ls改名为sale_en.ls及sale_zh.ls。按4、5两步分别生成sale_en.qm及sale_zh.qm文件;这一步其实也可以在第2步中这样加入:TRANSLATIONS += sale_en.ls sale_zh.ls,这样可以直接生成多个ls文件。

7、在程序代码中按语言的不同调用文件,如下示例:

8、因为QT的通用对话框在QT的原始代码中,按上面的步骤不能改变一些通用对话框的英语提示。解决办法是到QT的安装目录中的“/Qt/2010.02.1/qt/translations”目录下,用文本编辑软件打开qvfb_zh_CN.ts文件,然后将文件中所有<content>...</content>的内容拷贝到你自己的ts文件中的</content>与<TS>之间。然后用linguist打开再重新发布即可。

9、项目可以先以英语作为开发语言,在完成后再按此步骤增加多语种支持。

10、对于直接在源代码中使用中文的方法,如下:

1)在程序中直接使用中文,需要在程序中加入以下代码:

这样在程序中使用tr(“中文”)或者直接使用“中文”了;

2)解决读取ini文件中中文乱码

3)解决读取中文文件中文的乱码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
以下是使用Flask框架实现支付宝扫码支付的代码示例: ```python from flask import Flask, request import requests import json app = Flask(__name__) @app.route('/pay', methods=['POST']) def pay(): # 获取前端传来的订单信息 order_info = request.form.get('order_info') # 构造请求参数 data = { 'app_id': '你的APPID', 'method': 'alipay.trade.precreate', 'charset': 'utf-8', 'sign_type': 'RSA2', 'timestamp': '请求时间戳', 'version': '1.0', 'biz_content': { 'out_trade_no': '商户订单号', 'total_amount': '订单总金额', 'subject': '订单标题', 'store_id': '商户门店编号', 'timeout_express': '订单允许的最晚付款时间', 'qr_code_timeout_express': '二维码有效时间' } } # 将订单信息填入请求参数中 data['biz_content']['out_trade_no'] = order_info['out_trade_no'] data['biz_content']['total_amount'] = order_info['total_amount'] data['biz_content']['subject'] = order_info['subject'] data['biz_content']['store_id'] = order_info['store_id'] data['biz_content']['timeout_express'] = order_info['timeout_express'] data['biz_content']['qr_code_timeout_express'] = order_info['qr_code_timeout_express'] # 将请求参数转换为JSON格式 json_data = json.dumps(data) # 构造请求头 headers = { 'Content-Type': 'application/json;charset=utf-8' } # 发送请求 response = requests.post('https://openapi.alipay.com/gateway.do', data=json_data, headers=headers) # 解析响应结果 result = json.loads(response.text) # 返回二维码链接 return result['alipay_trade_precreate_response']['qr_code'] if __name__ == '__main__': app.run() ``` 在上述代码中,我们使用了Flask框架来搭建一个简单的Web应用,实现了支付宝扫码支付的功能。具体实现过程如下: 1. 定义了一个路由`/pay`,用于接收前端传来的订单信息。 2. 构造了请求参数,其中包括了APPID、请求时间戳、商户订单号、订单总金额、订单标题等信息。 3. 将订单信息填入请求参数中,并将请求参数转换为JSON格式。 4. 构造了请求头,指定了请求参数的格式为JSON。 5. 发送请求,获取支付宝返回的响应结果。 6. 解析响应结果,获取二维码链接。 7. 将二维码链接返回给前端。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值