【发布时间】:2015-04-16 22:54:12
【问题描述】:
我正在尝试用 kivy 制作一个基本的隐藏对象游戏,但由于我是新手,所以有点难。所以我所做的是使用 flowLayout 的画布显示了 4 张图像,现在我希望它们在单击 ON THEM 后消失。我应该怎么做,最好的方法是什么???
还有一件事,我想要一个标签来显示倒计时。我已经放置了一个标签,但它不起作用。所以我暂时把它注释掉了。如果有人可以请解释我哪里出错了。
from kivy.app import App
from kivy.uix.widget import Widget
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.anchorlayout import AnchorLayout
from kivy.uix.image import Image
from kivy.config import Config
from kivy.clock import Clock
from kivy.properties import StringProperty
from kivy.graphics.instructions import InstructionGroup
from kivy.graphics.context_instructions import Color
import random
Config.set('graphics', 'width', '480')
Config.set('graphics', 'height', '320')
running= True
class MyWidget(AnchorLayout):
time_number = StringProperty()
def __init__(self, **kwargs):
super(MyWidget, self).__init__(**kwargs)
self.time_number = str(50)
def call(self):
if running:
#print(self.time_number)
#self.time_number = str(int(self.time_number)+1)
pass
def clicked(self):
global running
#self.time_number = 50
running=False
Clock.schedule_interval(call, 1)
pos1 =(0) #random.randint(-200,200)
pos2 =(0) #random.randint(-200,200)
class WidgetsApp(App):
def build(self):
return MyWidget()
if __name__=="__main__":
WidgetsApp().run()
.kv 文件
<MyWidget>
AnchorLayout:
BoxLayout:
Image:
source:'B_image.png'
BoxLayout:
Label:
text:root.time_number
FloatLayout:
canvas:
Rectangle:
pos:(root.pos1,root.pos2)
size: 24, 24
source:'image.png'
Rectangle:
pos:(root.pos1 + 100,root.pos2)
size: 24, 24
source:'image.png'
Rectangle:
pos:(root.pos1,root.pos2 + 100)
size: 24, 24
source:'image.png'
Rectangle:
pos:(root.pos1 + 100,root.pos2 + 100)
size: 24, 24
source:'image.png'
【问题讨论】:
-
你应该把这篇文章分成两个单独的问题,因为你在这篇文章中问了两个问题。
标签: python-3.x kivy