Python - 在 Kivy 中的 BoxLayout 部件


Kivy 是一个开源 Python 库,用于快速开发利用创新用户界面的应用程序,如多点触控应用程序。它用于开发 Android 应用程序以及桌面应用程序。在本文中,我们将了解如何使用 BoxLayout 部件创建不同方向和颜色的按钮。

在以下代码中,我们首先创建一个方向为垂直的外框。然后我们创建一个具有水平方向的行 1。然后创建另外两行,其方向仍然为垂直。我们将所有这些行包装在外框中,并在创建过程中为我们创建的按钮部件赋予不同的文本和背景颜色。

示例

import kivy
from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.boxlayout import BoxLayout

# Main Kivy class
class BoxLayoutApp(App):

   def build(self):
      # Outer vertical box
      outerBox = BoxLayout(orientation='vertical')

      # For widgets next to each other,
      Row1 = BoxLayout(orientation='horizontal')


      # Create buttons for Row 1
      btn1 = Button(text="One",
          background_normal ='',
          background_color= (1, 0, 1, 1),
          font_size=25,
          size_hint=(0.7, 1))
      btn2 = Button(text="Two",
          background_normal='',
          background_color=(1, 1, 0, 0.8),
          font_size=25,
          size_hint=(0.7, 1))

      # Add buttons to Row 1
      Row1.add_widget(btn1)
      Row1.add_widget(btn2)

      #Buttons for row 2 and 3
      Row_2_3 = BoxLayout(orientation='vertical')

      btn3 = Button(text="Three",
          background_normal='',
          background_color=(1,0,0,0.75),
          font_size=25,
          size_hint=(1, 10))
      btn4 = Button(text="Four",
          background_normal='',
          background_color=(0,1,0,0.75),
          font_size=25,
          size_hint=(1, 15))

      # Add buttons to Row 2 and 3
      Row_2_3.add_widget(btn3)
      Row_2_3.add_widget(btn4)

      # Add all widgets to outerbox
      outerBox.add_widget(Row1)
      outerBox.add_widget(Row_2_3)
      return outerBox

# creating the object root for BoxLayoutApp() class
main_layout = BoxLayoutApp()
main_layout.run()

运行以上代码,会得到以下结果 −

输出

更新于: 2020 年 12 月 28 日

599 次浏览

开启您的 职业生涯

完成课程获得认证

开始学习
广告