Python 困惑于为什么PyGame显示';那是黑屏
所以,在我决定问这个问题之前,我做了一些研究,看看我的问题是什么,发现了这个问题:然而,这并不是很有帮助,因为我没有和这个人一样的问题。我肯定知道我的PyGame并没有过时或者类似的东西,因为我有一个以前版本的代码在工作 每次运行代码时,我都会得到一个黑屏 这是我的代码(有点长,对不起):Python 困惑于为什么PyGame显示';那是黑屏,python,screen,pygame,Python,Screen,Pygame,所以,在我决定问这个问题之前,我做了一些研究,看看我的问题是什么,发现了这个问题:然而,这并不是很有帮助,因为我没有和这个人一样的问题。我肯定知道我的PyGame并没有过时或者类似的东西,因为我有一个以前版本的代码在工作 每次运行代码时,我都会得到一个黑屏 这是我的代码(有点长,对不起): 因此,我基本上是试图在**class Screen()**中显示**class Pane()**中的窗格(现在是一个),但是就像我之前在运行代码时说的那样,我得到了一个黑屏。但由于某些原因,鼠标坐标跟踪器仍然
因此,我基本上是试图在
**class Screen()**
中显示**class Pane()**
中的窗格(现在是一个),但是就像我之前在运行代码时说的那样,我得到了一个黑屏。但由于某些原因,鼠标坐标跟踪器仍然可以工作。非常感谢您的帮助。好的,现在我已经解决了我的问题。(啊哈,新手错误)。
因此,在类窗格()的\uuuu init\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuoself)
区域中,我添加了
def __init__(self):
self.Screen = pygame.display.set_mode((1000,600), 0, 32)
self.font = pygame.font.SysFont('Arial', 25)
self.Screen.fill((white))
我不确定这是否是解决问题的最佳方法,但它确实有效。那很好。但是,如果你认为这不是解决问题的好方法,那么请务必教我一个更好的方法来解决我的问题。好的,现在我已经解决了我的问题。(啊哈,新手错误)。
因此,在类窗格()的\uuuu init\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuoself)
区域中,我添加了
def __init__(self):
self.Screen = pygame.display.set_mode((1000,600), 0, 32)
self.font = pygame.font.SysFont('Arial', 25)
self.Screen.fill((white))
我不确定这是否是解决问题的最佳方法,但它确实有效。那很好。但是,如果您认为这不是解决问题的好方法,那么请务必教我一种更好的方法来解决我的问题。问题在于您的代码组织
您有树时间pygame.display.set\u mode()
。每次调用pygame.display.set_mode()
都会破坏以前的屏幕
,创建新的屏幕
,新屏幕始终为黑色
您应该只创建一次屏幕
,并将其作为参数发送给其他类
def addPane(self, textToDisplay):
myPane = Pane(self.screen) # send screen to Pane
myPane.drawPane(textToDisplay)
# ...
class Pane():
def __init__(self, screen):
self.Screen = screen # get screen
并从clear()
函数中删除pygame.display.set_mode()
-在程序末尾使用一个屏幕
现在我可以看到带有“hello”的窗格问题在于代码组织
您有树时间pygame.display.set\u mode()
。每次调用pygame.display.set_mode()
都会破坏以前的屏幕
,创建新的屏幕
,新屏幕始终为黑色
您应该只创建一次屏幕
,并将其作为参数发送给其他类
def addPane(self, textToDisplay):
myPane = Pane(self.screen) # send screen to Pane
myPane.drawPane(textToDisplay)
# ...
class Pane():
def __init__(self, screen):
self.Screen = screen # get screen
并从clear()
函数中删除pygame.display.set_mode()
-在程序末尾使用一个屏幕
现在我可以看到带有“hello”的窗格