Pyglet/編寫一個Pyglet應用
< Pyglet
從頭開始學習一個開發框架的用法可能是最難的,尤其是需要閱讀大量參考資料的時候。這一章節能令您快速認識Pyglet,但講的並不深入。
Hello, World
編輯我們先從簡單的Hello, World
程序開始。它會打開一個窗口,顯示一些文字,然後等待您關閉它。您可以在這裡找到整個程序文件。
首先,您得導入Pyglet包:
import pyglet
使用pyglet.window.Window
創建一個窗口,它會立馬顯示在屏幕上:
window = pyglet.window.Window(caption="Hello, World")
要想顯示一些文字,我們需要一個Label
對象。這裡的關鍵字參數設置了標籤的字體、大小、位置以及對齊方式:
label = pyglet.text.Label('Hello, world', font_name='Times New Roman', font_size=36, x=window.width / 2, y=window.height / 2, anchor_x='center', anchor_y='center')
一個on_draw()
被添加到窗口,讓它可以重繪窗口中的內容。Pyglet提供了很多種方法將事件處理程序添加到對象,最簡單的例子就是使用裝飾器:
@window.event
def on_draw():
window.clear()
label.draw()
在上述的on_draw()
中:窗口被清空,且設置為了黑色,然後標籤會被繪製。
最後,調用:
pyglet.app.run()
這會進入到Pyglet默認的事件循環中,讓Pyglet響應鼠標、鍵盤等事件;也會按需調用您自定義的事件。
圖像瀏覽器
編輯很多遊戲和應用都需要加載和顯示圖像。在這個例子中,我們會從運行目錄里加載一張圖片並在窗口上顯示:
import pyglet
window = pyglet.window.Window()
image = pyglet.resource.image('kitten.jpg')
@window.event
def on_draw():
window.clear()
image.blit(0, 0)
pyglet.app.run()
我們使用pyglet.resource
中的函數image
來導入圖像。當然,您也可以選擇pyglet.image.load
。
方法blit
用來繪製圖像,參數
(0, 0)
通知Pyglet將圖像繪製在窗口坐標 (0, 0)處(位於窗口左下角)。
您可以在此找到該示例的代碼。