Kivy Python- 文本输入框填满整个浮动布局屏幕
Kivy Python- Text Input Box Filling Entire Float Layout Screen
我 运行 遇到了 Kivy 中 TextInput 的问题。
当我将它添加到我的一个屏幕上的现有 FloatLayout
时,它占据了整个 window,即使指定了高度。我想将它保留在 .py 文件中,因此请不要在 .kv 文件中添加任何用于调整大小的样式选项。
class WebsiteInput(Screen):
def __init__(self, **kwargs):
super(WebsiteInput, self).__init__(**kwargs)
Clock.schedule_once(self._finish_init)
def _finish_init(self, dt):
# Title Label
self.lbl1 = Label(text="Enter a URL to bind to this button:", pos=(self.x, self.height +132))
self.lbl1.font_name = 'Montserrat-Bold.ttf'
self.lbl1.font_size = 28
self.ids.float_web.add_widget(self.lbl1)
# URL Text Input
self.web_input = TextInput(height=100)
self.web_input.height = 100
self.ids.float_web.add_widget(self.web_input)
如您所见,我已尝试影响两个不同位置的大小,但它仍然填满了整个 window。
要使size
属性生效,您需要size_hint
属性在相应轴上为None
:
class WebsiteInput(Screen):
def __init__(self, **kwargs):
super(WebsiteInput, self).__init__(**kwargs)
Clock.schedule_once(self._finish_init)
def _finish_init(self, dt):
# Title Label
self.lbl1 = Label(text="Enter a URL to bind to this button:",
pos=(self.x, self.height +132))
self.lbl1.font_name = 'Montserrat-Bold.ttf'
self.lbl1.font_size = 28
self.ids.float_web.add_widget(self.lbl1)
# URL Text Input
self.web_input = TextInput(height=100,
size_hint = (1, None))
self.ids.float_web.add_widget(self.web_input)
我 运行 遇到了 Kivy 中 TextInput 的问题。
当我将它添加到我的一个屏幕上的现有 FloatLayout
时,它占据了整个 window,即使指定了高度。我想将它保留在 .py 文件中,因此请不要在 .kv 文件中添加任何用于调整大小的样式选项。
class WebsiteInput(Screen):
def __init__(self, **kwargs):
super(WebsiteInput, self).__init__(**kwargs)
Clock.schedule_once(self._finish_init)
def _finish_init(self, dt):
# Title Label
self.lbl1 = Label(text="Enter a URL to bind to this button:", pos=(self.x, self.height +132))
self.lbl1.font_name = 'Montserrat-Bold.ttf'
self.lbl1.font_size = 28
self.ids.float_web.add_widget(self.lbl1)
# URL Text Input
self.web_input = TextInput(height=100)
self.web_input.height = 100
self.ids.float_web.add_widget(self.web_input)
如您所见,我已尝试影响两个不同位置的大小,但它仍然填满了整个 window。
要使size
属性生效,您需要size_hint
属性在相应轴上为None
:
class WebsiteInput(Screen):
def __init__(self, **kwargs):
super(WebsiteInput, self).__init__(**kwargs)
Clock.schedule_once(self._finish_init)
def _finish_init(self, dt):
# Title Label
self.lbl1 = Label(text="Enter a URL to bind to this button:",
pos=(self.x, self.height +132))
self.lbl1.font_name = 'Montserrat-Bold.ttf'
self.lbl1.font_size = 28
self.ids.float_web.add_widget(self.lbl1)
# URL Text Input
self.web_input = TextInput(height=100,
size_hint = (1, None))
self.ids.float_web.add_widget(self.web_input)