我正在使用kivy为应用程序制作一个非常简单的GUI界面,布局非常简单。
然而,我在TextInputs方面遇到了一些困难...它们总是显示为完整的高度,我无法使它们调整到"合理"的文本高度,例如height。
我正在使用kv文件样式,因为我发现它更清洁、更容易集成到已有的应用程序中...我希望尽可能地减少应用程序的GUI-Python代码。
这是我得到的TextInput内容(添加其他部分的GUI是无用的)。 Python代码
然而,我在TextInputs方面遇到了一些困难...它们总是显示为完整的高度,我无法使它们调整到"合理"的文本高度,例如height。
我正在使用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和height属性...但都没有起作用。
pos_hint
。将'center_y'
设置为0.5,在此处阅读更多信息:https://kivy.org/docs/api-kivy.uix.widget.html#kivy.uix.widget.Widget.pos_hint - Edvardas Dlugauskas