• <td id="ceeca"><noscript id="ceeca"></noscript></td>
  • <td id="ceeca"></td>
  • <bdo id="ceeca"><center id="ceeca"></center></bdo>
    您的位置:首頁 > PPT課件 > 培訓教程PPT > Python基礎7ppt課件

    Python基礎7ppt課件

    素材編號:
    483434
    素材軟件:
    PowerPoint
    素材格式:
    ZIP/RAR
    素材上傳:
    weishenhe
    上傳時間:
    2022-10-09
    素材大。
    389 KB
    素材類別:
    培訓教程PPT
    網友評分:

    素材預覽

    Python基礎7ppt課件

    Python基礎7ppt課件下載是由PPT寶藏(www.xpj338811.com)會員weishenhe上傳推薦的培訓教程PPT, 更新時間為2022-10-09,素材編號483434。

    這是Python基礎7ppt課件下載,包括了wxPython,創建最小的空的wxPython程序,創建最小的空的wxPython程序,wxPython,導入 wxPython,使用應用程序和框架工作,子類化wxPython application類,創建一個應用程序實例并進入它的主事件循環,實例,初始化等內容,漂亮的界面是一個GUI程序必不可少的一部分,wxPython可以做到這一點,加之Python強大的功能和簡潔的語法,使用得它在Python的gui中成為一種主流。歡迎點擊下載Python基礎7ppt課件。

      wxPython

      漂亮的界面是一個GUI程序必不可少的一部分,wxPython可以做到這一點,加之Python強的功能和簡潔的語法,使用得它在Python的gui中成為一種主流。wxPython是wxWidget的庫的一個python的封裝。提供了一些庫和一些工具。這樣wxPython即有python語言的優點:語法強悍,少寫了不少代碼:也有wxWidget圖形庫的優點.直接拉控件到概位置就行了,不需要去調整控件的對齊,也不需要關心gui界面是否支持各種分辨率的桌面。而且界面都是可以運行時切換,只要寫很少的切換代碼?缙脚_的圖形庫...

      創建最小的空的wxPython程序

      importwx#1classApp(wx.App):#2defOnInit(self):#3frame=wx.Frame(parent=None,title=’Bare’)frame.Show()returnTrueapp=App()#4app.MainLoop()#5

      創建最小的空的wxPython程序

      這個基本的wxPython程序說明了開發任一wxPython程序所必須的五個基本步驟:1、導入必須的wxPython包2、子類化wxPython應用程序類3、定義一個應用程序的初始化方法4、創建一個應用程序類的實例5、進入這個應用程序的主事件循環

      wxPython

      導入wxPythonImportwx一旦這個包被導入,你就可以引用wxPython的類、函數和常量(它們以wx為前綴),如下所示:classApp(wx.App):

      導入wxPython

      你從wxPython導入其它東西之前必須先導入wx。通常情況下,Python中的模塊導入順序無關。但是wxPython中的不同,它是一個復雜的模塊。當你第一次導入wx模塊時,wxPython要對別的wxPython模塊執行一些初始化工作。例如wxPython中的一些子包,如xrc模塊,它在wx模塊導入之前不能夠正確的工作,我們必須按下面順序導入:

      導入wxPython

      importwxfromwximportxrc

      使用應用程序和框架工作

      一旦你導入了wx模塊,你就能夠創建你的應用程序(application)對象和框架(frame)對象。每個wxPython程序必須有一個application對象和至少一個frame對象。application對象必須是wx.App的一個實例或你在OnInit()方法中定義的一個子類的一個實例。當你的應用程序啟動的時,OnInit()方法將被wx.App父類調用。

      子類化wxPythonapplication類

      classMyApp(wx.App):defOnInit(self):frame=wx.Frame(parent=None,id=-1,title=”Bare”)frame.Show()returnTrue

      子類化wxPythonapplication類

      注意:我們沒有為我們的應用程序類定義一個__init__()方法。在Python中,這就意味著父方法wx.App.__init()__將在對象創建時被自動調用。這是一個好的事情。如果你定義你自己的__init__()方法,不要忘了調用其基類的__init()__方法,示例如下:classApp(wx.App):def__init__(self):wx.App.__init__(self)如果你忘了這樣做,wxPython不將被初始化并且你的OnInit()方法也不將得到調用。

      創建一個應用程序實例并進入它的主事件循環

      app=App()app.MainLoop()

      實例

      importwxclassFrame(wx.Frame):passclassApp(wx.App):defOnInit(self):self.frame=Frame(parent=None,title='Spare')self.frame.Show()self.SetTopWindow(self.frame)returnTrueif__name__=='__main__':app=App()app.MainLoop()

      實例

      我們改變了你們創建frame對象的方法。bare版的程序簡單地創建了一個wx.Frame類的實例。在spare中,我們定義了我們自己的Frame類作為wx.Frame的子類。此時,最終的結果沒有什么不同,但是如果你想在你的框架中顯示諸如文本、按鈕、菜單的話,你可能就想要你自己的Frame類了。

      初始化

      在OnInit()方法中,我們調用了這個App類自己的SetTopWindow()方法,并傳遞給它我們新創建的frame實例。我們不必定義SetTopWindow()方法,因為它繼承自wx.App父類。SetTopWindow()方法是一個可選的方法,它讓wxPython方法知道哪個框架或對話框將被認為是主要的。一個wxPython程序可以有幾個框架,其中有一個是被設計為應用程序的頂級窗口的。

      給你的wxPython程序一個穩固的基礎

      wxPython程序同樣有一個基礎,它由兩個必要的對象組成,用于支持你的應用程序的其余部分。它們是應用程序對象和頂級窗口對象。適當地使用這兩個對象將給你的wxPython應用程序一個穩固的開始并使得構造你的應用程序的其余部分更容易。

      給你的wxPython程序一個穩固的基礎

      應用程序對象管理主事件循環,主事件循環是你的wxPython程序的動力。啟動主事件循環是應用程序對象的工作。沒有應用程序對象,你的wxPython應用程序將不能運行。頂級窗口通常管理最重要的數據,控制并呈現給用戶。例如,在詞處理程序中,主窗口是文檔的顯示部分,并很可能管理著該文檔的一些數據。類似地,你的web瀏覽器的主窗口同時顯示你所關注的頁面并把該頁作為一個數據對象管理。

      如何創建和使用一個應用程序對象?

      任何wxPython應用程序都需要一個應用程序對象。這個應用程序對象必須是類wx.App或其定制的子類的一個實例。應用程序對象的主要目的受理幕后的主事件循環。這個事件循環響應于窗口系統事件并分配它們給適當的事件處理器。這個應用程序對象對wxPython進程的管理如此的重要以至于在你的程序沒有實例化一個應用程序對象之前你不能創建任何的wxPython圖形對象。

      如何創建和使用一個應用程序對象?

      父類wx.App也定義了一些屬性,它們對整個應用程序是全局性的。很多時候,它們就是你對你的應用程序對象所需要的全部東西。假如你需要去管理另外的全局數據或連接(如一個數據庫連接),你可以定制應用程序子類。在某些情況下,你可能想為專門的錯誤或事件處理而擴展這個主事件循環。然而,默認的事件循環幾乎適合所有的你所要寫的wxPython應用程序。

      創建一個wx.App的子類

      創建你自己的wx.App的子類是很簡單的。當你開始你的應用程序的時候,創建你自己的wx.App的子類通常是一個好的想法,即使是你不定制任何功能。創建和使用一個wx.App子類,你需要執行四個步驟:

      創建一個wx.App的子類

      1、定義這個子類2、在定義的子類中寫一個OnInit()方法3、在你的程序的主要部分創建這個類的一個實例4、調用應用程序實例的MainLoop()方法。這個方法將程序的控制權轉交給wxPythonOnInit()是wxPython架構的一部分,所以任何關于你的定制的類的所需的初始化通常都由OnInit()方法管理,而不在Python的__init__方法中。如果由于某些原因你決定需要__init__方法,那么你必須在你的__init__方法中調用父類的__init__方法,如下所示:wx.App.__init__(self)

      創建一個wx.App的子類

      通常,你在OnInit()方法中將至少創建一個框架對象,并調用該框架的Show()方法。你也可以有選擇地通過調用SetTopWindow()方法來為應用程序指定一個框架作為頂級窗口。頂級窗口被作為那些沒有指定父窗口的對話框的默認父窗口。

      理解應用程序對象的生命周期

      wxPython應用程序對象的生命周期開始于應用程序實例被創建時,在最后一個應用程序窗口被關閉時結束。這個沒有必要與你的wxPython應用程序所在的Python腳本的開始和結束相對應。Python腳本可以在wxPython應用程序創建之前選擇做一動作,并可以在wxPython應用程序的MainLoop()退出后做一些清理工作。然而所有的wxPython動作必須在應用程序對象的生命周期中執行。

      理解應用程序對象的生命周期

      創建應用程序對象觸發OnInit()方法并允許新的窗口對象被創建。在OnInit()之后,這個腳本調用MainLoop()方法,通知wxPython事件現在正在被處理。在窗口被關閉之前應用程序繼續它的事件處理。當所有頂級窗口被關閉后,MainLoop()函數返回同時應用程序對象被注銷。這之后,這個腳本能夠關閉其它的可能存豐的連接或線程。

      理解應用程序對象的生命周期

      如何定向wxPython程序的輸出

      所有的Python程序都能夠通過兩種標準流來輸出文本:分別是標準輸出流sys.stdout和標準錯誤流sys.stderr。通常,Python腳本定向標準輸出流到它所運行的控制臺。然而,當你的應用程序對象被創建時,你可以決定使用wxPython控制標準流并重定向輸出到一個窗口。在Windows下,這個重定向行為是wxPython的默認行為。而在Unix系統中,默認情況下,wxPython不控制這個標準流。在所有的系統中,當應用程序對象被創建的時候,重定向行為可以被明確地指定。我們推薦利用這個特性并總是指定重定向行為來避免不同平臺上的不同行為產生的任何問題。

      重定向輸出

      如果wxPython控制了標準流,那么經由任何方法發送到流的文本被重定向到一個wxPython的框架。在wxPyton應用程序開始之前或結束之后發送到流的文本將按照Python通常的方法處理(輸出到控制臺)。

      重定向輸出

      importwximportsysclassFrame(wx.Frame):def__init__(self,parent,id,title):print”Frame__init__”wx.Frame.__init__(self,parent,id,title)

      重定向輸出

      classApp(wx.App):def__init__(self,redirect=True,filename=None):print”App__init__”wx.App.__init__(self,redirect,filename)defOnInit(self):print”OnInit”#輸出到stdoutself.frame=Frame(parent=None,id=-1,title=’Startup’)#創建框架self.frame.Show()self.SetTopWindow(self.frame)print>>sys.stderr,”Apretenderrormessage”#輸出到stderrreturnTruedefOnExit(self):print”OnExit”

    上一頁:8.Python-GUI程序設計ppt課件 下一頁:pythonchapter7ppt課件

    相關素材

    1.Python基礎5ppt課件

    2.Python基礎4ppt課件

    Python基礎7ppt課件

    下載地址

    Python基礎7ppt課件

    優秀PPT

    Copyright:2009-2019 pptbz.com Corporation,All Rights Reserved PPT寶藏 版權所有

    免責聲明:本網站內容由用戶自行上傳,如權利人發現存在誤傳其他作品情形,請及時與本站聯系

    PPT模板下載 粵ICP備13028522號

    舉報 少妇被粗大的猛烈进出短文
  • <td id="ceeca"><noscript id="ceeca"></noscript></td>
  • <td id="ceeca"></td>
  • <bdo id="ceeca"><center id="ceeca"></center></bdo>