Python kivy - 如何降低 TextInput 的高度
Python kivy - how to reduce height of TextInput
我正在使用 kivy 为应用程序制作一个非常简单的图形用户界面。没有什么复杂的,非常简单的布局。
尽管如此,我在使用 TextInputs 时遇到了困难...它们总是以全高显示,我无法设法让它们调整到 "reasonable" 文本高度之类的高度。
我正在使用 kv 文件样式,因为我发现它更干净,更容易将它集成到现有的应用程序中...我想尽可能减少 gui-python 代码应用
这是我为 TextInput 得到的(添加 gui 的其他部分没用)。
Python代码
# textInput.py
from kivy import require
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang.builder import Builder
Builder.load_file('path/to/kv/file/textInput.kv')
require('1.10.0')
class MainScreen(BoxLayout):
pass
class Test(App):
def build(self):
self.title = 'Testing textInput'
return MainScreen()
if __name__ == '__main__':
Test().run()
KV码
# textInput.kv
<MainScreen>
orientation: 'vertical'
# Third section title
Label:
size_hint: (1, .1)
text: 'Setup Connection'
font_size: 25
# Third section Box
BoxLayout:
size_hint: (1, .2)
padding: [100, 0, 100, 0]
BoxLayout:
Label:
size_hint: (.2, 1)
text: 'Host'
TextInput:
height: self.minimum_height
multiline: False
text: 'localhost'
Label:
size_hint: (.2, 1)
text: ''
Label:
size_hint: (.2, 1)
text: 'Port'
TextInput:
size_hint: (.2, 1)
multiline: False
text: '502'
我尝试了很多东西,在这里的代码中我尝试同时使用 size_hint 和高度...但是 none 有效..
要设置小部件的高度,首先将 size_hint_y
设置为 None
,然后您可以将 height
设置为您想要的任何值。
TextInput:
size_hint: (.2, None)
height: 30
multiline: False
text: '502'
除了答案 size_hint_x
和 size_hint_y
必须分别设置为 None
才能使用 height
和 width
属性,即 size_hint: (None, None)
减少打字。如果要设置 width
属性,请将 size_hint_x
设置为 None,反之亦然。
我正在使用 kivy 为应用程序制作一个非常简单的图形用户界面。没有什么复杂的,非常简单的布局。
尽管如此,我在使用 TextInputs 时遇到了困难...它们总是以全高显示,我无法设法让它们调整到 "reasonable" 文本高度之类的高度。
我正在使用 kv 文件样式,因为我发现它更干净,更容易将它集成到现有的应用程序中...我想尽可能减少 gui-python 代码应用
这是我为 TextInput 得到的(添加 gui 的其他部分没用)。
Python代码
# textInput.py
from kivy import require
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang.builder import Builder
Builder.load_file('path/to/kv/file/textInput.kv')
require('1.10.0')
class MainScreen(BoxLayout):
pass
class Test(App):
def build(self):
self.title = 'Testing textInput'
return MainScreen()
if __name__ == '__main__':
Test().run()
KV码
# textInput.kv
<MainScreen>
orientation: 'vertical'
# Third section title
Label:
size_hint: (1, .1)
text: 'Setup Connection'
font_size: 25
# Third section Box
BoxLayout:
size_hint: (1, .2)
padding: [100, 0, 100, 0]
BoxLayout:
Label:
size_hint: (.2, 1)
text: 'Host'
TextInput:
height: self.minimum_height
multiline: False
text: 'localhost'
Label:
size_hint: (.2, 1)
text: ''
Label:
size_hint: (.2, 1)
text: 'Port'
TextInput:
size_hint: (.2, 1)
multiline: False
text: '502'
我尝试了很多东西,在这里的代码中我尝试同时使用 size_hint 和高度...但是 none 有效..
要设置小部件的高度,首先将 size_hint_y
设置为 None
,然后您可以将 height
设置为您想要的任何值。
TextInput:
size_hint: (.2, None)
height: 30
multiline: False
text: '502'
除了答案 size_hint_x
和 size_hint_y
必须分别设置为 None
才能使用 height
和 width
属性,即 size_hint: (None, None)
减少打字。如果要设置 width
属性,请将 size_hint_x
设置为 None,反之亦然。