Kivy是Python中与平台无关的GUI工具。由于它可以在Android, IOS, Linux和Windows等操作系统上运行。它基本上是用于开发Android应用程序, 但这并不意味着它不能在桌面应用程序上使用。
【Python Kivy中的StackLayout用法示例】????Kivy教程–通过示例学习Kivy。StackLayout:
要使用StackLayout firt, 请通过以下命令导入StackLayout:
from kivy.uix.stacklayout import StackLayout
Stack和Boxlayout之间的区别是很容易混淆的。
BoxLayout可以以垂直或水平的方式组织小部件。但是使用StackLayout,你可以组合这些方向。有4个行方向和4个列方向。
More flexible that Boxlayout(1D)StackLayout Orientation (2D):
- right to left or left to right
- top to bottom or bottom to top
- 'rl-bt', 'rl-tb', lr-bt', 'lr-tb'(Row wise)
- 'bt-rl', 'bt-lr', 'tb-rl', 'tb-lr'(Column wise)
下图显示了四个行方向和四个列方向。
Basic Approach to create Stack layout :1) import kivy
2) import kivyApp
3) import Button
4) import Stacklayout
5) Set minimum version(optional)
6) create App class
7) return widget
8) Run an instance of the class
该方法的实现:
# code to show how to use StackLayout# import kivy module
import kivy # this restricts the kivy version i.e
# below this kivy version you cannot
# use the app or software
kivy.require( "1.9.1" ) # base Class of your App inherits from the App class.
# app:always refers to the instance of your application
from kivy.app import App # creates the button in kivy
# if not imported shows the error
from kivy.uix.button import Button# The StackLayout arranges children vertically
# or horizontally, as many as the layout can fit.
from kivy.uix.stacklayout import StackLayout# class in which we are creating StackLayout
class StackLayoutApp(App): def build( self ):# Different orientation
# ['lr-tb', 'tb-lr', 'rl-tb', 'tb-rl', 'lr-bt' , 'bt-lr' , 'rl-bt' , 'bt-rl' ]
SL = StackLayout(orientation = 'lr-tb' )# Creating Multiple Buttons
btn1 = Button(text = "B1" , font_size = 20 , size_hint = (. 2 , . 1 ))
btn2 = Button(text = "B2" , font_size = 20 , size_hint = (. 2 , . 1 ))
btn3 = Button(text = "B3" , font_size = 20 , size_hint = (. 2 , . 1 ))
btn4 = Button(text = "B4" , font_size = 20 , size_hint = (. 2 , . 1 ))
btn5 = Button(text = "B5" , font_size = 20 , size_hint = (. 2 , . 1 ))
btn6 = Button(text = "B6" , font_size = 20 , size_hint = (. 2 , . 1 ))
btn7 = Button(text = "B7" , font_size = 20 , size_hint = (. 2 , . 1 ))
btn8 = Button(text = "B8" , font_size = 20 , size_hint = (. 2 , . 1 ))
btn9 = Button(text = "B9" , font_size = 20 , size_hint = (. 2 , . 1 ))
btn10 = Button(text = "B10" , font_size = 20 , size_hint = (. 2 , . 1 ))# adding widgets
SL.add_widget(btn1)
SL.add_widget(btn2)
SL.add_widget(btn3)
SL.add_widget(btn4)
SL.add_widget(btn5)
SL.add_widget(btn6)
SL.add_widget(btn7)
SL.add_widget(btn8)
SL.add_widget(btn9)
SL.add_widget(btn10)# returning widgets
return SL# run function runs the whole program
# i.e run() method which calls the
# target function passed to the constructor.
if __name__ = = '__main__' :
StackLayoutApp().run()
输出如下:
文章图片
这是针对方向” lr-tb” 的。首先, 将小部件从左到右添加, 然后从上到下添加。
注意:如果要更改方向, 只需将第31行的方向更改为以下任何方向-
For row wise orientation use:
-'lr-tb'
-'lr-bt'
-'rl-tb'
-'rl-bt'For column wise orientation use:
-'tb-lr'
-'tb-rl'
-'bt-lr'
-'bt-rl'
下面是图片输出, 上面所有方向–
对于行方向使用:
'lr-tb'
输出如下:
文章图片
'lr-bt'
输出如下:
文章图片
'rl-tb'
输出如下:
文章图片
'rl-bt'
输出如下:
文章图片
对于列方向定向, 请使用:
'tb-lr'
输出如下:
文章图片
'tb-rl'
输出如下:
文章图片
'bt-lr'
输出如下:
文章图片
'bt-rl'
输出如下:
文章图片
首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。
推荐阅读
- Python使用.kv文件的Kivy中的微调器小部件
- Python用NLTK提取单词示例
- Python字符串串联用法示例介紹
- Python字符串插值用法示例
- Python字符串方法|S2(len,count,center,ljust,rjust,isalpha,isalnum,isspace和join)
- Python字符串方法|设置S3(strip,lstrip,rstrip,min,max,maketrans,translate,replace和expandtabs)
- Python字符串介绍和用法指南
- Python如何在Kivy中切换小部件()
- Python使用.kv文件在Kivy中切换小部件