【发布时间】:2019-06-04 22:33:26
【问题描述】:
我正在寻找一种在Spinner 小部件中指定按钮颜色和按钮大小的方法。
我想指定不是主(显示)按钮,而是下拉列表按钮。
似乎Spinner 小部件可能只有 API 来指定主(显示)按钮。
如何更改微调器的颜色和大小?
import kivy
from kivy.app import App
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.uix.spinner import Spinner
class SpinnerWidget(Spinner):
def __init__(self, **kwargs):
super(SpinnerWidget, self).__init__(**kwargs)
self.pos_hint = {'top':0.8, 'x':0.2}
self.size_hint_x = 0.5
self.size_hint_y = 0.1
# default value shown
self.text = 'Home'
# main button color = white
self.background_color = [255,255,255,1]
# font size
self.font_size = "12sp"
# font_color
self.color = [0,0,0,1]
# available values
self.values=('Home', 'Work', 'Other', 'Custom')
# Is it possible to change color of drop-down button here?
# ~~~
def show_selected_value(spinner, text):
print('The spinner', spinner, 'has text', text)
class TestScreen(Screen):
def __init__(self, **kwargs):
super(TestScreen, self).__init__(**kwargs)
spi = SpinnerWidget()
self.add_widget(spi)
sm = ScreenManager()
class DemoApp(App):
def build(self):
sm.add_widget(TestScreen(name='test'))
return sm
if __name__ == '__main__':
DemoApp().run()
【问题讨论】: