如何设置 Kivy GridLayout 宽度
How to set a Kivy GridLayout width
我是kivy初学者,需要创建两个GridLayout列。我想设置网格的第一列。并将最后一个列保留为默认值。可以吗?
我必须在哪里设置宽度?在 .py 文件或 .kv 文件中?
这是我的代码:
main.py
from kivy.app import App
from kivy.uix.floatlayout import FloatLayout
from kivy.config import Config
from kivy.properties import ObjectProperty
from kivy.lang import Builder
Config.set('graphics', 'width', '920')
Config.set('graphics', 'height', '480')
Config.set('graphics', 'resizable', False)
from os import listdir
kv_path = '../views/mainView/'
for kv in listdir(kv_path):
Builder.load_file(kv_path+kv)
class Container(FloatLayout, object):
dispImg = ObjectProperty()
def update(self, *args):
self.dispImg = '../../images/placeholder.jpg'
class mainView(App):
def build(self):
container = Container()
return container
if __name__ == "__main__":
mainView().run()
main.kv
<Container>:
cols: 2
Image:
...
# I want to set this column width
BoxLayout:
...
# and leave this column width
你要做的是在第一项中设置一个固定的宽度,然后 size_hint_x
到 None。
GridLayout:
cols:2
Image:
width: 200
size_hint_x: None
BoxLayout:
我是kivy初学者,需要创建两个GridLayout列。我想设置网格的第一列。并将最后一个列保留为默认值。可以吗?
我必须在哪里设置宽度?在 .py 文件或 .kv 文件中?
这是我的代码:
main.py
from kivy.app import App
from kivy.uix.floatlayout import FloatLayout
from kivy.config import Config
from kivy.properties import ObjectProperty
from kivy.lang import Builder
Config.set('graphics', 'width', '920')
Config.set('graphics', 'height', '480')
Config.set('graphics', 'resizable', False)
from os import listdir
kv_path = '../views/mainView/'
for kv in listdir(kv_path):
Builder.load_file(kv_path+kv)
class Container(FloatLayout, object):
dispImg = ObjectProperty()
def update(self, *args):
self.dispImg = '../../images/placeholder.jpg'
class mainView(App):
def build(self):
container = Container()
return container
if __name__ == "__main__":
mainView().run()
main.kv
<Container>:
cols: 2
Image:
...
# I want to set this column width
BoxLayout:
...
# and leave this column width
你要做的是在第一项中设置一个固定的宽度,然后 size_hint_x
到 None。
GridLayout:
cols:2
Image:
width: 200
size_hint_x: None
BoxLayout: