Как установить ширину Kivy GridLayout - PullRequest
0 голосов
/ 04 июля 2018

Я новичок в 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

1 Ответ

0 голосов
/ 04 июля 2018

Что вам нужно сделать, это установить фиксированную ширину в первом элементе, а size_hint_x - None.

GridLayout:
    cols:2
    Image:
        width: 200
        size_hint_x: None
    BoxLayout:
...