xbmc如果图像显示语句

时间:2014-01-09 02:31:27

标签: python python-2.7 xbmc

我有我用xml编写的图像列表,我可以在xbmc上运行它们。

以下是xml中的图像列表:

<?xml version="1.0" encoding="utf-8"?>
<window type="dialog">
    <allowoverlay>no</allowoverlay>
    <coordinates>
        <system>1</system>
        <posx>0</posx>
        <posy>0</posy>
    </coordinates>

<controls>
    <control type="image" id="1">
       <description>Image1</description>
       <posx>307</posx>
       <posy>7</posy>
       <width>164</width>
       <height>102</height>
       <visible>true</visible>
       <texturefocus>image1_blue.jpg</texturefocus>
       <texturenofocus>image1_yellow.jpg</texturenofocus>
       <onup>2</onup>
       <ondown>3</ondown>
       <onleft>1</onleft>
       <onright>1</onright>
    </control>

    <control type="image" id="2">
       <description>Image2</description>
       <posx>471</posx>
       <posy>7</posy>
       <width>201</width>
       <height>102</height>
       <visible>true</visible>
       <texturefocus>image2_yellow.jpg</texturefocus>
       <texturenofocus>image2_blue.jpg</texturenofocus>
       <onup>2</onup>
       <ondown>3</ondown>
       <onleft>1</onleft>
       <onright>1</onright>
    </control>

    <control type="image" id="4">
       <description>Image3</description>
       <posx>671</posx>
       <posy>7</posy>
       <width>177</width>
       <height>102</height>
       <visible>true</visible>
       <texturefocus>image3_yellow.jpg</texturefocus>
       <texturenofocus>image3_blue.jpg</texturenofocus>
       <onup>2</onup>
       <ondown>3</ondown>
       <onleft>1</onleft>
       <onright>1</onright>
    </control>

    <control type="image" id="6">
       <description>image4</description>
       <posx>848</posx>
       <posy>7</posy>
       <width>176</width>
       <height>102</height>
       <visible>true</visible>
       <texturefocus>image4_yellow.jpg</texturefocus>
       <texturenofocus>image4_blue.jpg</texturenofocus>
       <onup>2</onup>
       <ondown>3</ondown>
       <onleft>1</onleft>
       <onright>1</onright>
    </control>
</controls>
</window>

我想知道如何在python for xbmc中写if语句如果图像包含id存在,那么我想知道如何使用id更改图像?

1 个答案:

答案 0 :(得分:0)

Python附带xml模块,该模块具有有用的ElementTree,可以满足您的需求。

以下是如何使用它的示例:

import xml.etree.ElementTree as ET

filename = 'name_of_the_xml_file.xml'
tree = ET.parse(filename)
root = tree.getroot()
controls = root.find('controls')

for control in controls.findall('control'):
    # Here are the image filenames, focus and nofocus.
    focus = control.find('texturefocus').text
    nofocus = control.find('texturenofocus').text
    print('texturefocus={0}, texturenofocus={1}'.format(focus, nofocus))

进一步阅读:xml.etree.ElementTree documentation