周海汉
/文
2010.2.17
我以前一篇文章《wxpython 使用 XRCed创建界面
》,提到如何用xrced创建界面以及它支持gettext的i18n,但并没有具体的i18n的实现。本文举例基于xrced的i18n的实现。
参考文档中有金庆的关于xrc的i18n的实现。不过,他在2007年末是完全自己实现装载xrc,那么事件,控件的绑定都需要自己实现。而xrced自动生成的代码可以自动实现装载和绑定,我的实现是基于自动的代码之上的i18n。应该比金庆的更简单快捷。尤其是界面复杂而又经常变动时。
所以本文可以算是他的文章的一个有益补充与更新。
一、使用xrced建立一个简单框架
保存为xrci18n.xrc,如下:
二、使用xrced生成py代码
在“generate python"对话框里,一定选上"generate gettext strings".生成xrci18n_xrc.py。
三、增加对i18n的支持代码
新建一个文件xrci18nfrm.py,继承自动生成的xrcxrcframe框架类,用于重载方法,事件的实现。而xrci18n_xrc.py每次修改xrc界面都会自动生成,导致你的实现可能丢失,所以要在新文件中继承并实现。
这里增加了对i18n的支持。实现了一个函数i18n_install. 并在__init__方法中调用。
wx的i18n不是单纯的gettext就可以的。必须使用wx.Locale(). 代码中将其语言初始化为wx.LANGUAGE_CHINESE_SIMPLIFIED,即中文简体。
设置翻译语言路径,增加类别。最后使用gettext安装该语言。
此处可以再实现为配置文件,以及根据系统环境自动选择语言。
四、处理xrc资源
gettext不能直接处理xrc,只能处理自动生成的xrci18n_xrc.py。
4.1 安装gettext
其实python自带gettext处理模块,但我还是选择安装gettext和msgfmt,方便使用。
sudo agp-get install gettext
4.2 生成pot文件和mo文件
其中messages.po是xgettext提取出来的。如下:
可以看到hello和hello,world两个资源。
修改后如下:
调用msgfmt生成mo文件:
zhouhh@zhouhh-home:~/xrci18n$ msgfmt messages.po
4.3 遵循gettext格式,新建locale目录
下面有各种语言如en_US,zh_CN,每种语言下面新建LC_MESSAGES目录,下面放真正的翻译mo文件。
zhouhh@zhouhh-home:~/xrci18n$ ls locale
en_US zh_CN
zhouhh@zhouhh-home:~/xrci18n$ ls locale/zh_CN
LC_MESSAGES
zhouhh@zhouhh-home:~/xrci18n$ ls locale/zh_CN/LC_MESSAGES/
messages.mo
再将生成的messages.mo拷贝到locale/zh_CN/LC_MESSAGES/目录下。
五、新建测试文件xrci18n.py
继承wx.App是为了程序以后有更多的扩展。实现其OnInit和OnExit方法。
六、执行
python xrci18n.py
看到程序已经变成中文界面。由于csdn关闭传图,故不能展示效果。
七、参考:
社区讨论:http://bbs.pythonid.com/viewthread.php?tid=179
wxpython官网:http://wiki.wxpython.org/XRCAndI18N
相关ppt:http://yergler.net/talks/desktopapps_uk/
wxpython官网:http://wiki.wxpython.org/UsingXmlResources
金庆的相关文章:http://blog.csdn.net/jq0123/archive/2007/12/17/1943440.aspx
分享到:
相关推荐
4. **动态加载**:在运行时,应用程序可以动态地加载和解析XRC文件,实现界面的动态更新和自定义。 **XRCed功能** XRCed作为资源编辑器,提供以下核心功能: 1. **创建新项目**:用户可以从头开始创建新的XRC文件...
通过wxGlade或XRCed等工具,开发者还可以设计XML布局文件,以实现界面的可视化设计。 总而言之,wxPython是Python编程中一个强大且灵活的GUI工具,它简化了创建跨平台应用程序的过程,尤其适合那些希望快速开发桌面...
随着对基础的掌握,可以深入研究更多高级特性,如AUI(Advanced User Interface)布局管理,以及wxGlade或XRCed等可视化布局工具的使用。 **10. 社区与资源** wxPython拥有活跃的社区,提供了许多在线教程、论坛、...
python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。
基于Simulink的语音信号降噪与增强.docx
java资源Java条形码生成库 Barcode4J提取方式是百度网盘分享地址
python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。
python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。
com.bishua666.luxxx1.apk
Nginx配置文件中FastCGI相关参数理解
python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。
内容概要:本文介绍了由 Google 开发的编程语言 Golang (Go)。Golang 是一种静态类型、编译型且具有垃圾回收功能的并发编程语言,旨在提供简单、可靠和高效的开发体验。它的语法类似于 C 语言,去除了复杂的语法结构,提高了代码可读性和效率。同时,Golang 还提供了卓越的性能、内存管理和跨平台支持,适用于网络应用、分布式系统、云计算等领域。此外,文中提到多个知名公司在其业务中广泛采用了 Go 语言,并定期更新版本以适应不断变化的技术需求。 适合人群:对于对编程感兴趣的技术人员,尤其是希望深入了解并发编程以及寻求高性能后端语言的研发人员。 使用场景及目标:①理解和掌握 Golang 的基本概念及其与其他传统编程语言的区别;②探索 Golang 如何利用 goroutines 和 channels 提供强大的并发编程能力;③了解 Golang 在构建高可用性分布式系统方面的优势。 其他说明:随着 Go 社区的发展壮大和技术的不断创新,学习 Golang 不仅为开发者打开了新的视野,也为未来的项目选型提供了有力支持。
yolo系列算法目标检测数据集,包含标签,可以直接训练模型和验证测试,数据集已经划分好,包含数据集配置文件data.yaml,适用yolov5,yolov8,yolov9,yolov7,yolov10,yolo11算法; 包含两种标签格:yolo格式(txt文件)和voc格式(xml文件),分别保存在两个文件夹中; yolo格式:<class> <x_center> <y_center> <width> <height>, 其中: <class> 是目标的类别索引(从0开始)。 <x_center> 和 <y_center> 是目标框中心点的x和y坐标,这些坐标是相对于图像宽度和高度的比例值,范围在0到1之间。 <width> 和 <height> 是目标框的宽度和高度,也是相对于图像宽度和高度的比例值
python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。
功能说明: 系统主要包括主页、个人中心、用户管理、就诊人建档管理、医院介绍管理、科室管理、医生管理、预约挂号管理、用户退号管理、异常提醒管理、留言板、系统管理等功能模块。 环境说明: 开发语言:Java 框架:ssm,mybatis JDK版本:JDK1.8 数据库:mysql 5.7及以上 数据库工具:Navicat11及以上 开发软件:eclipse/idea Maven包:Maven3.3及以上 服务器:tomcat7及以上
python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。
汉语言文学 4.pdf
python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。
yolo系列算法目标检测数据集,包含标签,可以直接训练模型和验证测试,数据集已经划分好,包含数据集配置文件data.yaml,适用yolov5,yolov8,yolov9,yolov7,yolov10,yolo11算法; 包含两种标签格:yolo格式(txt文件)和voc格式(xml文件),分别保存在两个文件夹中; yolo格式:<class> <x_center> <y_center> <width> <height>, 其中: <class> 是目标的类别索引(从0开始)。 <x_center> 和 <y_center> 是目标框中心点的x和y坐标,这些坐标是相对于图像宽度和高度的比例值,范围在0到1之间。 <width> 和 <height> 是目标框的宽度和高度,也是相对于图像宽度和高度的比例值
中国城镇住户微观数据(1986-2015)-最新全集.zip