首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >PGU (Pygame GUI API)可以与pgs4a (安卓的PyGame子集)一起工作吗?

PGU (Pygame GUI API)可以与pgs4a (安卓的PyGame子集)一起工作吗?
EN

Stack Overflow用户
提问于 2012-06-07 02:18:01
回答 1查看 931关注 0票数 0

到目前为止,我已经成功地使用pgs4a 0.9.4在安卓上运行了简单的PyGame应用程序。我的下一个实验是看看是否可以在PGU中使用PyGame图形用户界面小部件;不幸的是,这似乎不起作用,尽管有一些论坛帖子建议应该这样做。有没有人在这方面取得了成功?

我还在摸索学习如何捕获和记录错误信息,所以下面是我尝试的一个演示问题的最小示例。这个应用程序只会显示一个黑屏,如果有错误消息,也会以白色文本显示。

请注意,只需导入PGU模块就足以破坏某些东西。也就是说,如果我注释掉"from pgu import gui",那么一切都会正常工作。令人讨厌的是,异常似乎没有被完全捕获--应用程序只是在启动后立即退出--所以我不确定问题在PGU导入中的哪里。

代码语言:javascript
代码运行次数:0
运行
复制
import pygame
msg = 'OK'
try:
    from pgu import gui # pass works without error
except Exception as e:
    msg = str(e)

try:
    import android
except ImportError:
    android = None

FPS = 30
WIDTH, HEIGHT = 480, 800

def main():
    pygame.init()
    screen = pygame.display.set_mode((WIDTH, HEIGHT))
    if android:
        android.init()
        android.map_key(android.KEYCODE_BACK, pygame.K_ESCAPE)
    font = pygame.font.Font(None, 24)
    surf = font.render(msg, True, (255, 255, 255))
    pygame.time.set_timer(pygame.USEREVENT, 1000 / FPS)
    while True:
        ev = pygame.event.wait()
        if android:
            if android.check_pause():
                android.wait_for_resume()
        if ev.type == pygame.USEREVENT:
            screen.fill((0, 0, 0, 255))
            screen.blit(surf, (10, 400))
            pygame.display.flip()
        elif ev.type == pygame.QUIT or (ev.type == pygame.KEYDOWN and
                                        ev.key == pygame.K_ESCAPE):
            break
    pygame.quit()

if __name__ == "__main__":
    main()
EN

回答 1

Stack Overflow用户

发布于 2013-01-02 12:56:49

最近读过这篇文章,但还没试过。看起来您需要将要导入的其他模块复制到app目录中。http://possiblywrong.wordpress.com/2012/06/16/python-on-android/

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10919823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档