繁体   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