日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

xwpython aui 子窗口-wxpython中的wxaui窗口管理器

發布時間:2024/10/8 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 xwpython aui 子窗口-wxpython中的wxaui窗口管理器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Aui manger 是個窗口(組件)管理器,可能比直接用 Sizer 方便一些。

wx2.8example 窗口布局為:

左邊一個 panel,叫做 leftPanel,里頭放了點東西。里頭的東西我們暫時不關心;

右上方是一個 Notebook,支持 tab 的。以后具體的 Demo 就顯示在那里;

右下方是個 TextCtrl,用來存放 log 信息。

所以:

leftPanel = wx.Panel(self)

self.nb = wx.Notebook(self, -1)

self.log = wx.TextCtrl(self, -1, style=wx.TE_MULTILINE|

wx.TE_READONLY|wx.HSCROLL)

log 應該是 READONLY 的。

下面用 aui manager 來把這三個窗體加入主窗體。

import wx.aui

加載模塊

self.mgr = wx.aui.Auimanager()

生成管理器

self.mgr.SetManagedWindow(self)

用 mgr 來管理主窗口,也就是現在的 self.

注意在官方的代碼中,并不直接管理主窗體。而是生成了一個 panel 并加到主窗體中,然后管理這個 panel。據稱這樣做可以避免 Mac 版的一個 Bug.

self.mgr.AddPane(self.nb,

wx.aui.AuiPaneInfo().

CenterPane().

Name("Notebook"))

串接的方式并不新奇,但 AuiPaneInfo() 之后的函數次序是可交換的。我猜測這些函數都返回相同的類型。

CenterPane() 的一個作用是使窗體盡可能地大。此外,使用它之后,關閉窗體的按鈕消失了。

self.mgr.AddPane(leftPanel,

wx.aui.AuiPaneInfo().

Left().Layer(2).BaseSize((240,-1)).

MinSize((160, -1)).

Caption("InfoMath Demo").

CloseBotton(False))

函數調用方式與前面的類似。Left() 居左。Layer 選擇預設布局方式,可以去掉這一句,對比不同效果。CloseBotton(False) 去掉關閉按鈕。

self.mgr.AddPane(self.log ...

與前面類似,這里就不說了。

self.mgr.Update()

讓前面的設置起作用

總結

以上是生活随笔為你收集整理的xwpython aui 子窗口-wxpython中的wxaui窗口管理器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。