Python GTK+ 3 中的筆記本


在本文中,我們將藉助 Python GTK + 3 建立多標籤筆記本圖形使用者介面。因此,我們將建立一個看起來像筆記本的視窗。

理解問題

手頭的問題是使用 Python GTK + 3 建立一個筆記本。如果您的系統上未安裝 GTK + 3 軟體包,則可以使用命令“pip install pygobject”或在 Windows 中使用“MSYS2”軟體包安裝此軟體包。

因此,我們將建立一個視窗,視窗內將有兩個選項卡或頁面,使用者可以與這些頁面互動。這些選項卡或頁面將代表具有自身內容的不同頁面。使用者將能夠像在瀏覽器中一樣在這些選項卡之間切換。選項卡將包含不同的資訊集,並且可以在筆記本中執行不同的任務。

上述問題的邏輯

為了解決使用 Python GTK + 3 建立筆記本的上述問題,我們將使用 GTK 庫提供的 gtk.Notebook 小部件。在我們的程式碼中,我們使用的是 GTK 的 3 版。因此,基本上我們將建立一個筆記本,其中將有兩個頁面,分別稱為頁面 1 和頁面 2。每個頁面將提供不同的資訊。因此,我們將初始化一個主視窗,然後在其中建立一個筆記本。在筆記本中,我們可以建立所需數量的頁面或選項卡。以便使用者可以與筆記本互動。

演算法

  • 步驟 1 - 首先,我們將在程式中匯入所需的庫。因此,我們將使用 gi 模組及其函式。

  • 步驟 2 - 其次,我們將建立一個名為 NotebookClass 的類,然後藉助 Gtk.window 建立一個主視窗。之後,我們還將定義視窗的大小。

  • 步驟 3 - 接下來,我們將藉助 Gtk.Notebook 建立一個筆記本。

  • 步驟 4 - 正如我們上面所討論的,我們將在筆記本中建立選項卡或頁面。因此,為了在筆記本中建立頁面,我們將使用 Gtk.Box() 函式,這將顯示為頁面 1。定義其邊框寬度、內容和標籤為頁面 1。

  • 步驟 5 - 與上述步驟相同,我們將建立一個名為頁面 2 的第二個頁面,並定義其邊框寬度、內容和頁面標籤為頁面 2。

  • 步驟 6 - 建立類的物件並呼叫它以顯示我們建立的視窗或筆記本。

示例

# Import the necessary libraries
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk

# Create a class to create a notebook
class NotebookClass(Gtk.Window):
   def __init__(self):
      Gtk.Window.__init__(self, title="Notebook Article")

      # Set the border width
      self.set_border_width(10)
      self.set_default_size(500, 300)

      # Create a notebook
      self.notebook = Gtk.Notebook()
      self.add(self.notebook)

      # Create the page 1
      self.page1 = Gtk.Box()
      self.page1.set_border_width(50)
      self.page1.add(Gtk.Label(label="This is the content of page 1"))
      self.notebook.append_page(self.page1, Gtk.Label(label="Page 1"))

      # Create the page 2
      self.page2 = Gtk.Box()
      self.page2.set_border_width(50)
      self.page2.add(Gtk.Label(label="This is the content of page 2"))
      self.notebook.append_page(self.page2, Gtk.Label(label="Page 2"))


note = NotebookClass()
note.connect("destroy", Gtk.main_quit)
note.show_all()
Gtk.main()

輸出

在上面筆記本的示例中,我們顯示了兩張影像,用於顯示我們使用 GTK +3 建立的筆記本的不同選項卡。根據需要,我們可以更改選項卡的內容並進行相應操作。

複雜度

使用 Python GTK +3 建立筆記本的時間複雜度取決於我們建立的選項卡或頁面的數量以及每個頁面中的內容。新增或刪除選項卡的時間複雜度為 O(1),因為它在筆記本小部件上操作。

更新於:2023 年 10 月 16 日

172 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始
廣告