簡體   English   中英

Python和Pygame的靈感與最佳實踐

[英]Python and Pygame inspiration and best practice

抱歉,您在此問題中的回答不夠具體,但我不知道該問什么。

我有一個Raspberry Pi,將嘗試在汽車計算機項目中使用。 我有使用Pygame編寫界面的技巧。

我對python或pygame並不是很熟悉,但是我在PHP,HTML和C#以及VB對Winforms方面有豐富的經驗。

在這種情況下,我將在右側顯示一個菜單,其中包含5個“標簽”。 我會怎么想呢? 我是否應該考慮使用PHP / HTML,並在每個選項卡頁面上都有一個文件,然后在此處加載標頭,背景和內容,以及如何鏈接到每個* .py文件(如果可能的話)? 根據所選菜單,我是否應該更多地考慮使用JS和Ajax使用表面(“ div”)來顯示我的頁面?

我花了一個晚上玩耍,我想我要做的是這樣的:

//Set up the layout
//Add a surface for Tab 1 (tab1Layout.py)
//Add a surface for Tab 2 (tab2Layout.py) - set invisible
//Add a surface for Tab 3 (tab3Layout.py) - set invisible
//Add a surface for Tab 4 (tab4Layout.py) - set invisible
//Add a surface for Tab 5 (tab5Layout.py) - set invisible

//Add the menu to the right (menu.py)

//Start the pygame loop
//Listen for events in the menu (menuEvents.py)
//Listen for events in tab 1 (tab1Events.py)
//Listen for events in tab 2 (tab2Events.py)
//Listen for events in tab 3 (tab3Events.py)
//Listen for events in tab 4 (tab4Events.py)
//Listen for events in tab 5 (tab5Events.py)

我在這里正確嗎?

你們知道做這種事情的任何好的教程或其他庫嗎? 我不想加載X或類似的東西。

有沒有很好的教程技巧,或者知道我可以在其中學習代碼的任何類似項目?

因此,很難確切地知道您想要什么。 但是,我想在這里倡導簡單性,如果您自己創建了這么多文件,您將會感到困惑,並且擁有很多冗余代碼。

從個人游戲制作的角度來看,我的屏幕是單一類的所有方法。 屏幕上有一些實例變量,但是每種方法都包含pygame主循環,即

while True:
    for event in pygame.event.get():
        #whatever
        pass

然后按一下按鈕即可轉到班級中的另一種方法。 我建議為每個選項卡按鈕創建一個類,或者為整個選項卡按鈕創建一個類,可以對其進行更新,繪制到屏幕上並在每個選項卡的所有單獨方法中使用

與php和html之類的方法不同的是缺少預定義的結構,因為您必須從頭開始進行所有這些操作。 我的網站上有一些代碼片段,您可以用來制作按鈕等,如果有幫助的話。 這是它的鏈接

另外,如果選擇單獨的文件方法,則python的導入非常直觀,可以使用以下命令從文件tabLayout3.py中導入一個類(例如Layout3):

from tabLayout3 import Layout3

(假設tabLayout3.py的路徑在我的python路徑中)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM