Kivy是Python中与平台无关的GUI工具。由于它可以在Android, IOS, Linux和Windows等操作系统上运行。它基本上是用于开发Android应用程序, 但这并不意味着它不能在桌面应用程序上使用。
????Kivy教程–通过示例学习Kivy。弹出窗口小部件:
要使用弹出窗口, 你必须导入:
from kivy.uix.popup import Popup
弹出窗口小部件用于创建弹出窗口。默认情况下, 弹出窗口将覆盖整个” 父” 窗口。创建弹出窗口时, 必须至少设置Popup.title和Popup.content。
【Python使用.kv文件的Kivy中的弹出窗口小部件】请记住, 小部件的默认大小为size_hint =(1, 1)。如果你不希望弹出窗口显示在全屏上, 则必须给出小于1的大小提示(例如size_hint =(。8, .8)), 或者停用size_hint并使用固定大小属性。
注意:弹出窗口是一个特殊的小部件。请勿尝试将其作为子级添加到任何其他小部件中。如果这样做, 将像处理普通小部件一样处理Popup, 并且不会将其隐藏在后台创建, 例如:
BoxLayout:
MyPopup:# bad !
基本方法:
1) import kivy
2) import kivyApp
3) import Widget
4) import Floatlayout
5) import Label
6) import popup
7) Set minimum version(optional)
8) Create widget class
9) Create Layout class :
10) create App class
9) create .kv file (name same as the app class):
1) create Widget
2) create popup
3) Give label to popup
4) create button to close popup
10) return Layout/widget/Class(according to requirement)
11) define popup function(Which shows the popup on press the button)
12) Run an instance of the class
该方法的实施:
popup.py文件
# Kivy example for the Popup widget# Program to Show how to create a switch
# import kivy module
import kivy # base Class of your App inherits from the App class.
# app:always refers to the instance of your application
from kivy.app import App# this restrict the kivy version i.e
# below this kivy version you cannot
# use the app or software
kivy.require( '1.9.0' )# Widgets are elements of a graphical user
# interface that form part of the User Experience.
from kivy.uix.widget import Widget
# The Label widget is for rendering text.
from kivy.uix.label import Label# module consist the floatlayout
# to work with FloatLayout first
# you have to import it
from kivy.uix.floatlayout import FloatLayout# Popup widget is used to create popups.
# By default, the popup will cover
# the whole "parent" window.
# When you are creating a popup, # you must at least set a Popup.title and Popup.content.
from kivy.uix.popup import Popup# Creating a widget class
# through this we add button
# the commands of the class is in .kv file
class Widgets(Widget):
def btn( self ):
# calling of the show popup function
show_popup()# Popup class is defined
# The command of the class is in .kv file
class Popups(FloatLayout):
pass# create App class
class MyApp(App):
def build( self ):
# return the widget
return Widgets()# define popup function in this we create the popup
def show_popup():
show = Popups()popupWindow = Popup(title = "Popup Window" , content = show, size_hint = ( None , None ), size = ( 200 , 200 ))# open popup window
popupWindow. open ()# Attach close button press with popup.dismiss action
# content.bind(on_press = popup.dismiss)# run the App
if __name__ = = "__main__" :
MyApp().run()
.kv文件
实现
# .kv file of the popup code# Adding Button widget
<
Widgets>
:
Button:
text: "Press me"
on_release: root.btn()# Adding Label, Button to popup
<
Popups>
:Label:
text: "You pressed the button"
size_hint: 0.6 , 0.2
pos_hint: { "x" : 0.2 , "top" : 1 }Button:
text: "Close the popup"
# set size of the button
size_hint: 1 , 0.4
# set position of the button
pos_hint: { "x" : 0 , "y" : 0.1 }
输出如下:
当出现按钮按下弹出窗口时, 请单击窗口中除弹出屏幕弹出窗口以外的其他任何地方, 都将消失:
文章图片
首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。
推荐阅读
- #yyds干货盘点#WordPress搭建个人网站后台问题汇总
- Python打印姓名的首字母和全名
- Python程序检查字符串是否是回文
- Python程序在给定字符串中使用集合来计算元音数
- 使用Python程序爬取网页并获得最常用的单词
- 查找正方形和矩形的周长/周长的程序
- Python如何实现图像强度转换操作()
- Python程序使用OpenCV提取帧|视频操作
- 查找奇数次出现的数字的Python程序