Computer >> Máy Tính >  >> Lập trình >> Python

Python - AnchorLayout trong Kivy

Kivy là một thư viện Python mã nguồn mở để phát triển nhanh chóng các ứng dụng sử dụng giao diện người dùng sáng tạo, chẳng hạn như các ứng dụng cảm ứng đa điểm. Nó được sử dụng để phát triển ứng dụng Android, cũng như các ứng dụng Máy tính để bàn. Trong bài viết này, chúng ta sẽ xem cách sử dụng định vị bố cục neo.

Sử dụng AnchorLayouts, chúng tôi đặt các widget ở một trong các đường viền. Lớp kivy.uix.anchorlayout.AnchorLayout thực hiện bố cục neo. Cả tham số anchor_x và tham số anchor_y đều có thể được chuyển các giá trị ‘left’, ‘right’ và ‘center’. Trong chương trình dưới đây, chúng tôi tạo hai nút, gắn chúng vào hai neo và giữ chúng trong BoxLayout.

Ví dụ

from kivy.app import App
from kivy.uix.anchorlayout import AnchorLayout
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.button import Button
class AnchorLayoutApp(App):
   def build(self):
      # Anchor Layout1
      anchor1 = AnchorLayout(anchor_x='left', anchor_y='bottom')
      button1 = Button(text='Bottom-Left', size_hint=(0.3, 0.3),background_color=(1.0, 0.0, 0.0, 1.0))
      anchor1.add_widget(button1)
      # Anchor Layout2
      anchor2 = AnchorLayout(anchor_x='right', anchor_y='top')
      # Add anchor layouts to a box layout
      button2 = Button(text='Top-Right', size_hint=(0.3, 0.3),background_color=(1.0, 0.0, 0.0, 1.0))
      anchor2.add_widget(button2)
      # Create a box layout
      BL = BoxLayout()
      # Add both the anchor layouts to the box layout
      BL.add_widget(anchor1)
      BL.add_widget(anchor2)
      # Return the boxlayout widget
      return BL
# Run the Kivy app
if __name__ == '__main__':
   AnchorLayoutApp().run()

Chạy đoạn mã trên cho chúng ta kết quả sau -

Đầu ra

Python - AnchorLayout trong Kivy