【问题标题】:Random column number set in one gridlayout在一个网格布局中设置随机列号
【发布时间】:2017-11-21 09:04:44
【问题描述】:

test.py

import sqlite3 as lite

from kivy.uix.screenmanager import Screen
from kivy.app import App
from kivy.lang import Builder
from kivy.core.window import Window

Window.size = (600, 325)

class UserGroup(Screen):
    pass


class FactUserGroup(App):

    def build(self):
        self.root = Builder.load_file('test.kv')
        return self.root


if __name__ == '__main__':
    FactUserGroup().run()

test.kv

<CustomLabel@Label>:
    text_size: self.size
    valign: "middle"
    padding_x: 5

<SingleLineTextInput@TextInput>:
    multiline: False

<GreenButton@Button>:
    background_color: 1, 1, 1, 1
    size_hint_y: None
    height: self.parent.height * 0.120

UserGroup

    GridLayout:
        cols: 2
        padding : 30,30
        spacing: 20, 20
        row_default_height: '30dp'

        Label:
            text: 'Male'
            text_size: self.size
            valign: 'middle'

        CheckBox:
            group: 'check'
            id : chk


        Label:
            text: 'Female'
            text_size: self.size
            valign: 'middle'

        CheckBox:
            group: 'check'

        CustomLabel:
            text: 'age'
            text_size: self.size
            valign: 'middle'

        SingleLineTextInput:
            id: age


        GreenButton:
            text: 'Ok'


        GreenButton:
            text: 'Cancel'
            on_press: app.stop()

(

 如何在同一 GridLayout 的一行中设置男性、女性。如果我使用两个 gridlaout 第一个设置 cols: 4 和第二个 set cols: 2 并在弹出窗口中显示然后它会给出错误“弹出窗口只能有一个小部件作为内容"。那么如何在一个 GridLayout 中设置第一行 4 列和第二行 2 列。

【问题讨论】:

    标签: python python-2.7 kivy kivy-language


    【解决方案1】:

    你不能单独使用 gridlayout 来做到这一点。

    您可以制作一个包含两列的网格布局,并将水平盒子布局放在需要拆分的网格中。

    或者你可以使用stacklayout。 stacklayout

    我只会在垂直 boxlayout 中使用两个 gridlayout。

    您只需将两个网格布局都放在一个盒子布局中。所以 Popup 将包含 boxlayout,并且不会抱怨多个小部件。

    MyBoxLayout:
        orientation: "vertical"
    
        GridLayout1:
            cols: 2
        GridLayout2:
            cols: 4
    

    【讨论】:

      猜你喜欢
      • 2011-08-07
      • 1970-01-01
      • 2019-12-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-30
      • 2015-10-24
      • 1970-01-01
      相关资源
      最近更新 更多