2016-06-10 54 views
1

现在我正在努力完成一个名为Pihpone的项目;我一直在关注adafruit教程,我也买了他们建议的所有物品代码更改 - Python - Piphone - Raspberry Pi

问题是..代码是写为2,8“而我有3.5”屏幕

我已经成功地做出了一些修改,如修改320x240与480x320

仍然不够,但我不知道做什么进一步;请提出任何建议;

以下是截图:
Before
After

https://github.com/climberhunt/Piphone/archive/master.zip 从那里,你可以下载由Adafruit的使代码;你可以在piphone.py中找到代码。

+1

嗨,而不是链接可以发布一个截图的地方?我认为你可以附加图片在你的文章,即使以最低的声誉。此外,一些代码示例会有所帮助 - 尝试将问题隔离到最小的代码量。 – lorenzog

+0

你可以在上面的链接代码中看到我原来的帖子中的一段按钮;这些按钮的坐标为:X,Y,高度和宽度;我认为存在这个问题,但我不太确定。它只是我的一个opionin – Incognito

+0

有数字输入#0的屏幕0不适用[按钮((30,0,320,60),bg ='box'), 按钮((30,60,60,60),bg =(1,cb = numericCallback,value = 1), 按钮((90,60,60,60),bg ='2',cb = numericCallback,value = 2), – Incognito

回答

0

piphone.py中的代码似乎使用pygame模块来完成图形。问题是所有的硬编码坐标和尺寸的东西,如Button s。要解决这个问题,必须在运行时计算这些值,并取决于显示分辨率。 255行设置显示模式。

screen = pygame.display.set_mode(modes[0], FULLSCREEN, 16) 

这样做之后,就可以从pygame.display.Info()得到的视频显示信息对象并获取所述当前视频模式的宽度和高度,然后使用这些值来缩放和按钮的位置。

您可能还需要为希望程序支持的各种尺寸的显示器创建不同的图像文件集。

+0

谢谢你的回答;我会那样尝试;希望它能工作 – Incognito

+0

不客气。这可能是相当数量的工作。做这件事的一种方法是将所有的GUI元素放在一个理想化的网格上,例如1000x1200,以获得起始值。然后,在知道实际显示大小后,计算x和y缩放因子,可能还会使用x和y偏移量,这些偏移量将映射坐标和大小(如果虚拟显示为真实显示)。 – martineau

+0

上帝......这我不知道做..-_- aa ..我真的不知道在互联网上的某个地方是不是这个piphone软件的任何版本,但对于3.5“屏幕 – Incognito