将按钮更改为image.Load应用程序和显示按钮错误。 KIVY,Python

时间:2014-12-29 22:22:51

标签: python kivy

我试图将图片显示为应用的介绍。每次用户运行程序时,它都应该显示图像,然后按下时,它应该打开一些弹出窗口的按钮。

from kivy.app import runTouchApp
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.popup import Popup
from kivy.uix.image import Image
from kivy.lang import Builder


kv = '''
BoxLayoutWithPopup:
    orientation:'horizontal'
    spacing:10
    padding:5
    Image:
        source: 'appintro.png'
        size:100,100
        on_press:
            root.pop1()            
'''

    #Helpme:
        #title: 'Help Me'
        #content: 'helpme.png'
       # size_hint: None,None
      #  pos_hint: 700,320
     #   size: 250,100

    #Games:
    #    title: 'Games'
   #     content: 'helpme.png'
  #      size_hint: None,None
 #       pos_hint: 100,20
#        size: 250,100



class BoxLayoutWithPopup(BoxLayout):

    def pop1(self):
#        root.add_widget(HelpMe)
 #       root.add_widget(Games)

        helpme = Popup(title='helpme', content=Image(source='helpme.png'),
                    size_hint=(.8, .8), pos=(1,30), size=(200, 200))
        helpme.open()

    #def pop2(self):
        games = Popup(title='games', content=Image(source='games.png'),
                    size_hint=(.5, .5), pos=(20,80), size=(200,200))
        games.open()

        settings = Popup(title='settings', content=Image(source='settings.png'),
                    size_hint=(.3, .3), pos=(1,1), size=(400, 400))
        settings.open()


if __name__ == '__main__':
    runTouchApp(Builder.load_string(kv))

任何人都可以帮我识别这段代码有什么问题吗?我在初始化应用程序时尝试显示一个介绍,按下后会打开主页面,但弹出窗口的图像和图像不会显示。我也试过移动弹出位置,它似乎不起作用。请帮帮我。

1 个答案:

答案 0 :(得分:0)

当你想要一个字典时,你正在传递一个元组作为pos_hint。如果您想指定位置,则应使用pos - 而不是pos_hint=(1,1),而是使用pos=(1,1)。如果要指定相对于父项的位置,可以使用pos_hint={'x': 0, 'y': 0}作为示例。