Kivy中的Python浮動佈局?
Kivy是一個開源的Python庫,用於快速開發使用創新使用者介面(例如多點觸控應用程式)的應用程式。它用於開發Android應用程式以及桌面應用程式。在本文中,我們將學習如何使用FloatLayout小部件在視窗中建立不同位置的按鈕。按鈕的位置可以是絕對位置,也可以相對於較大的視窗的相對位置。
使用絕對位置
在這種方法中,我們將按鈕的位置設定為固定位置。因此,當視窗大小調整時,視窗大小和按鈕大小會發生變化,但按鈕的位置保持不變。因此,根據視窗被壓縮的方式,按鈕有時會隱藏。
示例
import kivy from kivy.app import App from kivy.uix.button import Button from kivy.uix.floatlayout import FloatLayout #from kivy.config import Config #Config.set('graphics', 'resizable', True) # creating the App class class FloatApp(App): def build(self): # creating Floatlayout Flt = FloatLayout() btn = Button(text='Hello world', size_hint=(0.5 ,0.2), pos=(100, 200), background_normal='', background_color=(1, 0, 1, 1)) # adding button widget Flt.add_widget(btn) return Flt # Run the app FloatApp().run()
執行上面的程式碼,我們將得到以下結果:
使用相對位置
在這種方法中,我們使用位置提示設定按鈕的位置。因此,當視窗大小調整時,視窗大小和按鈕大小會發生變化,並且按鈕的位置也會相對於視窗的相對大小而變化。因此,當視窗被壓縮時,按鈕永遠不會隱藏。
示例
from kivy.app import App from kivy.uix.button import Button from kivy.uix.floatlayout import FloatLayout from kivy.config import Config Config.set('graphics', 'resizable', True) # creating the App class class FloatApp(App): def build(self): # creating Floatlayout Flt = FloatLayout() btn = Button(text='Hello world', size_hint=(0.2 ,0.2), pos_hint={'x':.2, 'y':.2 }, background_normal='', background_color=(1, 1, 0, 0.8) ) # adding button widget Flt.add_widget(btn) return Flt # Run the app FloatApp().run()
輸出
執行上面的程式碼,我們將得到以下結果:
廣告