Python 如何在Kivy中更改禁用小部件的颜色?
这只是我应用程序的一小部分。Python 如何在Kivy中更改禁用小部件的颜色?,python,kivy,Python,Kivy,这只是我应用程序的一小部分。 我有一个按钮“嗨”。 我在gridlayout中还有两个按钮“1”和“2”,id为w_10 按下“Hi”键时,w_10将被禁用。 现在,我不希望“1”和“2”在w_10被禁用后改变颜色,我希望它们保持与过去状态相同的颜色,即绿色。请改进我的代码 我的代码: #!/usr/bin/kivy import kivy kivy.require('1.7.2') from kivy.app import App from kivy.lang import Builder
我有一个按钮“嗨”。
我在gridlayout中还有两个按钮“1”和“2”,id为w_10
按下“Hi”键时,w_10将被禁用。
现在,我不希望“1”和“2”在w_10被禁用后改变颜色,我希望它们保持与过去状态相同的颜色,即绿色。请改进我的代码 我的代码:
#!/usr/bin/kivy
import kivy
kivy.require('1.7.2')
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.uix.gridlayout import GridLayout
from kivy.uix.button import Button
Builder.load_string("""
<MenuScreen>:
GridLayout:
cols: 1
Button:
text: 'HI'
on_press: root.change()
GridLayout:
id: w_10
rows:1
Button:
text: '1'
background_normal: ''
background_color:(0.207, 0.635, 0.423, 0.9)
Button:
text:'2'
background_normal: ''
background_color:(0.207, 0.635, 0.423, 0.9)
""")
# Declare both screens
class MenuScreen(Screen):
def change(self):
self.ids['w_10'].disabled=True
sm = ScreenManager()
menu = MenuScreen(name='menu')
sm.add_widget(menu)
class TestApp(App):
def build(self):
return sm
if __name__ == '__main__':
TestApp().run()
#/usr/bin/kivy
进口克维
kivy.require('1.7.2')
从kivy.app导入应用程序
从kivy.lang导入生成器
从kivy.uix.screenmanager导入screenmanager,屏幕
从kivy.uix.gridlayout导入gridlayout
从kivy.uix.button导入按钮
生成器。加载\u字符串(“”)
:
网格布局:
科尔斯:1
按钮:
文字:“嗨”
按:root.change()
网格布局:
id:w_10
行数:1
按钮:
正文:“1”
背景\u正常:“”
背景颜色:(0.207,0.635,0.423,0.9)
按钮:
正文:“2”
背景\u正常:“”
背景颜色:(0.207,0.635,0.423,0.9)
""")
#声明两个屏幕
类菜单屏幕(屏幕):
def更改(自我):
self.ids['w_10'].disabled=True
sm=屏幕管理器()
menu=MenuScreen(name='menu')
sm.add_小部件(菜单)
类TestApp(应用程序):
def生成(自):
返回sm
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
TestApp().run()
将yout按钮的属性设置为emtpy字符串:
#!/usr/bin/kivy
import kivy
kivy.require('1.7.2')
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.uix.gridlayout import GridLayout
from kivy.uix.button import Button
Builder.load_string("""
<MenuScreen>:
GridLayout:
cols: 1
Button:
text: 'HI'
on_press: root.change()
GridLayout:
id: w_10
rows:1
Button:
background_disabled_normal: ''
text: '1'
background_normal: ''
background_color:(0.207, 0.635, 0.423, 0.9)
Button:
background_disabled_normal: ''
text:'2'
background_normal: ''
background_color:(0.207, 0.635, 0.423, 0.9)
""")
# Declare both screens
class MenuScreen(Screen):
def change(self):
self.ids['w_10'].disabled = True
sm = ScreenManager()
menu = MenuScreen(name='menu')
sm.add_widget(menu)
class TestApp(App):
def build(self):
return sm
if __name__ == '__main__':
TestApp().run()
Button:
background_disabled_normal: ''
disabled_color: 1, 1, 1, 1
text: '1'
background_normal: ''
background_color:(0.207, 0.635, 0.423, 0.9)