真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

wxPython--學(xué)習(xí)筆記(一)-創(chuàng)新互聯(lián)

wxPython程序由兩個必要的對象組成,應(yīng)用對象APP和頂級窗口對象Frame

創(chuàng)新互聯(lián)主要從事網(wǎng)站設(shè)計制作、網(wǎng)站設(shè)計、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)西吉,十年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220
  • 應(yīng)用程序?qū)ο驛PP管理主事件循環(huán)MainLoop()
  • 頂級窗口對象Frame管理數(shù)據(jù),控制并呈現(xiàn)給用戶

先看一段最簡單的代碼:

import wx

class App(wx.App):
    
def OnInit(self):
        frame= wx.Frame(parent = None, title = 'Kobe')
        frame.Show()
return True

app= App()
app.MainLoop()

上面的代碼說明了開發(fā)wxPython程序必須的5個步驟:

    1. 1. 導(dǎo)入wxPython包
    2. 2. 子類化wxPython應(yīng)用類
    3. 3. 定義應(yīng)用程序的初始化方法
    4. 4. 創(chuàng)建一個應(yīng)用程序類的實例
    5. 5. 進入這個應(yīng)用程序的主事件循環(huán)(MainLoop())
    6. OnInit()方法沒有參數(shù),返回值為BOOL,此部分可以做一些關(guān)鍵數(shù)據(jù)初始化的動作,如果失敗,返回False,程序退出。通常會在此方法中創(chuàng)建一個Frame對象,并調(diào)用Frame的Show()方法。
    7. 應(yīng)用程序?qū)ο箝_始于實例被創(chuàng)建時,結(jié)束于最后一個應(yīng)用程序窗口被關(guān)閉,與Python腳本開始執(zhí)行沒有先后關(guān)系。
    8. 每個wxPython程序必須有一個application對象和至少一個frame對象。application對象必須是wx.App的一個實例或在OnInit()方法中定義的一個子類的一個實例,當(dāng)程序啟動時,OnInit()方法將被wx.App父類調(diào)用。
    9. 上面的代碼中,定義了名為MyApp的子類,在OnInit()方法中創(chuàng)建frame對象。
    10. wx.Frame(self, parent, id, title, pos, size, style, name)
      其中,只有parent是必須的,其余都有默認(rèn)值,返回值為空。下面是其各個參數(shù)的類型:
    parent (type=Window)
    id (type=int)
    pos     (type=Point)
    size   (type=Size)
    style (type=long)
    name  (type=String)
    Returns:bool

調(diào)用Show()方法使frame可見,否則不可見??梢酝ㄟ^給Show一個布爾值參數(shù)來設(shè)定frame的可見性:

frame.Show(False)  # 框架不可見frame.Show(True)   # 框架可見frame.Hide() # 等同于frame.Show(False)

該程序并沒有定義一個__init__()方法,意味著父方法wx.App.__init()__將在對象創(chuàng)建時被自動調(diào)用。若自己定義__init__()方法,還需要調(diào)用其基類的__init__()方法。

class App(wx.APP):
def __init__(self):
        wx.APP.__init__(self)

如果沒有這樣做, wxPython將不被初始化,并且OnInit()方法也不會調(diào)用

當(dāng)程序進入主循環(huán)后,控制權(quán)將轉(zhuǎn)交給wxPython。wxPython GUI程序主要響應(yīng)用戶的鼠標(biāo)和鍵盤事件。當(dāng)一個應(yīng)用程序的所有框架被關(guān)閉后,app.MainLoop()方法將返回,程序退出。

import wx


class Frame(wx.Frame):
    
def __init__(self, image, parent=None, id =-1,
                 pos= wx.DefaultPosition, 
                 title= 'Hello, wxPython!'):
        
        temp= image.ConvertToBitmap()
        size= temp.GetWidth(), temp.GetHeight()
        
        wx.Frame.__init__(self, parent, id, title, pos, size)
        self.bmp= wx.StaticBitmap(parent = self, bitmap = temp)

class App(wx.App):
    
def OnInit(self):
        image= wx.Image('wxPython.jpg', wx.BITMAP_TYPE_JPEG)
        self.frame= Frame(image)
        
        self.frame.Show()
        self.SetTopWindow(self.frame)
return True

def main():
    app= App()
    app.MainLoop()

if __name__ == '__main__':
    main()

新聞名稱:wxPython--學(xué)習(xí)筆記(一)-創(chuàng)新互聯(lián)
鏈接地址:http://weahome.cn/article/jhsio.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部