我想动态改变网格布局中小部件文本的颜色
我想要在一个网格布局的组件中动态改变文字的颜色。请问我该怎么做呢?我创建了一个6x6的组件矩阵,我需要让网格中某个方块的文字动态闪烁。
1 个回答
1
这和你之前的问题是一样的,
你可以看看这个链接:我想在Kivy的网格布局中动态改变小部件的颜色
只需要把背景颜色(background_color)换成按钮的颜色属性(color)就可以了。试试下面的代码:
from kivy.app import App
from kivy.uix.gridlayout import GridLayout
from kivy.uix.button import Button
from kivy.graphics import Color
from kivy.clock import Clock
import random
class RootWidget(GridLayout):
pass
class MainApp(App):
def build(self):
parent = GridLayout(cols=6)
for i in (1,2,3,4,5,6):
for j in (1,2,3,4,5,6):
parent.add_widget(Button(text='%s%s'%(i,j)))
Clock.schedule_interval(lambda a:self.update(parent),1)
return parent
def update(self,obj):
print "I am update function"
for child in obj.children:
c=[0,random.random(),1,random.random()]
child.color=c
if __name__ == '__main__':
MainApp().run()