- 論壇徽章:
- 0
|
最近在寫一個小程序用來顯示在audacious中播放的音樂的歌詞,暫取名為pyLyric。由于audacious并未提供python的編程借口,所以不太可能將其寫成插件形式,因此只能寫成一個獨立的程序了。目前已完成的部分可以正常顯示歌詞,并能實時獲取播放器的信息(這是靠audacious-announcer實現(xiàn)的)。接下來要做得是GUI以及歌詞下載功能。GUI方面打算用wxpython。之前曾學過一段時間,可以始亂終棄,半途而廢,現(xiàn)在基本上不記得什么了,慚愧。。。今日重出江湖,但愿能成就一番“事業(yè)”。茲定于今日起,每日研讀相關書籍,記錄只言片語,小思微議,積少成多,功利必定日益相增,鴻圖大志可圖矣!
GUI的一些基本概念是不消說了,從前終日混跡在Windows之中,什么窗口,事件驅(qū)動等,其大意也早已明白了七八成。其中一點值得注意的是在wxpython中,我們所看見的“窗口”叫做Frame,而任何可見的對象被稱做Windows,也叫Widget。
import wx
"""A simple wxPython
program"""
class
App(wx.App):
define OnInit(self):
frame=wx.frame(parent=None,title='Bare')
frame.Show()
return True
if __name__=='__main__':
app=App()
app.MainLoop()
以上這段代碼是一個最基本的wxpython程序的,僅僅顯示一個空白的窗口。但麻雀雖小,五臟俱全。這也是最基本的wxpython的框架。wxpthon中所有方法的都是采用大寫字母開頭,比如:MainLoop, App。
在wxpython中鼓勵采用上面的import,而不是from wxPython.wx import *。另外,在導入任何其他wxpython的package前,最好先導入wx。因為wx會做一些初始化的工作,一些其他的subpackage可能需要這些初始化的信息。雖然在python中,導入package的順序是沒有限制的。
OnInit()方法會被父類wx.App調(diào)用,從而完成初始化工作。
當一個模塊(module)首句是字符串的話,那么它將會作為該模塊的簡短說明而放入 __doc__中。
今日事今日畢。明日繼續(xù)深入學習wxPython!!!
本文來自ChinaUnix博客,如果查看原文請點:http://blog.chinaunix.net/u2/69119/showart_688074.html |
|