Python 如何在xbmc的label控件中输入字符串?

Python 如何在xbmc的label控件中输入字符串?,python,xbmc,Python,Xbmc,我正在编写python脚本,因为我想将字符串存储在名为strings.po的语言文件中,这样可以更改标签中的文本 我想知道如何编写代码,使用我存储在strings.po中的id在label控件中输入字符串?首先,对于XBMC Frodo和更高版本,建议对脚本加载项使用字符串id范围32000-32999 此外,翻译仍然不需要使用.po格式,您仍然可以使用.xml格式 顺便说一句,以下是这两方面的一个例子: 你的插件目录/resources/language/english/strings.po

我正在编写python脚本,因为我想将字符串存储在名为
strings.po的语言文件中,这样可以更改标签中的文本


我想知道如何编写代码,使用我存储在strings.po中的id在label控件中输入字符串?

首先,对于XBMC Frodo和更高版本,建议对脚本加载项使用字符串id范围32000-32999

此外,翻译仍然不需要使用.po格式,您仍然可以使用.xml格式

顺便说一句,以下是这两方面的一个例子:

你的插件目录/resources/language/english/strings.po

# XBMC Media Center language file
# Addon Provider: Tristan Fischer (sphere@dersphere.de)
msgid ""
msgstr ""
"Project-Id-Version: XBMC Addons\n"
"Report-Msgid-Bugs-To: alanwww1@xbmc.org\n"
"POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: XBMC Translation Team\n"
"Language-Team: English (http://www.transifex.com/projects/p/xbmc-addons/language/en/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: en\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

msgctxt "#32000"
msgid "Hello"
msgstr ""
您的插件目录/resources/language/english/strings.xml

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<strings>
    <string id="32000">Hello</string>
</strings>

谢谢你的帮助。我是否必须对其他语言使用相同的ID?如果是这样的话,如果我想阅读与英语相同ID的法语,xbmc如何知道我在寻找哪种语言?@user3179027:是的,当然ID必须相同。XBMC将自动以用户在XBMC语言环境设置中设置的语言查找字符串。如果有帮助的话,请考虑接受我的回答。哦,好的,我现在收到了,谢谢你的帮助。我接受了你的回答,因为它很有帮助。非常感谢。我忘了问你一个问题。我想知道如何创建变量以允许我从一个语言文件夹(例如法语)加载字符串,以及如何从strings.xml获取id以在创建变量名时将其放在控件上?
<control type="label">
    <description>My hello label</description>
    <posx>0</posx>
    <posy>0</posy>
    <width>80</width>
    <height>36</height>
    <align>left</align>
    <font>font12</font>
    <textcolor>white</textcolor>
    <visible>true</visible>
    <label>$LOCALIZE[SCRIPT32000]</label>
</control>
import xbmcaddon
addon = xbmcaddon.Addon()

my_hello_string = addon.getLocalizedString(32000)