温馨提示:本文翻译自stackoverflow.com,查看原文请点击:python - Pygame and Classes
pygame python subclass

python - pygame和类

发布于 2020-03-30 21:48:53

因此,我在课堂上制作了一个tkinter / pygame游戏,而在课堂上python无法识别pygame。(不用担心我将如何分别启动Windows,一旦窗口工作就会完成

from tkinter import *
from pygame import *
class firstscreen:
    def __init__(self):
        self.window = Tk()
        self.window.minsize(300, 250)
        self.window.resizable(width=False, height=False)
        self.window.title("Login")
        self.username = ""
        self.password = ""
        self.userlabel = Label(self.window, text="Username")
        self.userlabel.place(x=50, y=50)
        self.passlabel = Label(self.window, text="Password")
        self.passlabel.place(x=50, y=100)
        self.userentry = Entry(self.window, textvariable=self.username)
        self.userentry.place(x=110, y=50)
        self.passentry = Entry(self.window, textvariable=self.password, show="*")
        self.passentry.place(x=110, y=100)
        self.loginbutton = Button(self.window, text="Login", command = self.login())
        self.loginbutton.place(x=80, y=140)
        self.registerbutton = Button(self.window, text="Register",command=self.login())
        self.registerbutton.place(x=140, y=140)
        self.window.mainloop()
    def login(self):
        print("Hello")

class gamewindow():
    def __init__(self):
        pygame.init()
        game = pygame.display.set_mode((800, 300))
runlogin = firstscreen()
rungame = gamewindow()
NameError:name 'pygame' is not defined

(对于第29行,pygame.init())

查看更多

提问者
Commander Red
被浏览
19
Rabbid76 2020-01-31 19:54

必须是

from pygame import *

# [...]

class gamewindow():
    def __init__(self):
        init()
        game = display.set_mode((800, 300))

要么

import pygame

# [...]

class gamewindow():
    def __init__(self):
        pygame.init()
        game = pygame.display.set_mode((800, 300))

请参见导入系统-子模块