global e e=1 e += 1 e=int(e) old_win.withdraw()如何是old_win.withdraw()执行时e+1
时间: 2024-05-07 22:21:53 浏览: 9
如果您希望在执行 `old_win.withdraw()` 时将 `e` 的值加 1,可以将其放在一个函数中,该函数将执行这两个操作。例如:
```python
def withdraw_and_increment_e():
global e
e += 1
e = int(e)
old_win.withdraw()
# 调用函数
withdraw_and_increment_e()
```
这将首先将 `e` 加 1,然后将其转换为整数,并最后将 `old_win` 隐藏。
相关问题
def quit(self): login_win.destroy() def login_clear(): txt_name.delete(0, tk.END) txt_password.delete(0, tk.END) login_win = tk.Tk() login_win.title("登录") login_win.resizable(False, False) btn_login = tk.Button(login_win, text="登录", command=login_valid) btn_login.grid(row=2, column=0, padx=5, pady=5) quit_button = tk.Button(login_win, text="取消", command=self.quit) quit_button.grid(row=2, column=1, padx=5, pady=5) w_width, w_height = 400, 200 s_width = login_win.winfo_screenwidth() s_height = login_win.winfo_screenheight() x, y = (s_width - w_width) // 2, (s_height - w_height) // login_win.geometry(f"{w_width}x{w_height}+{x}+{y}") window.withdraw()未解析的引用 'self'
在这段代码中,未定义`window`,因此在最后一行会出现未解析的引用`self`错误。可能是因为你在其他地方定义了`window`,但没有在这段代码中进行引用。如果你想在这里使用`self.window`,则需要在类中定义`window`属性,并在其他方法中进行引用或修改。如果不需要使用`self.window`,则可以将最后一行改为`login_win.withdraw()`。修改后的代码如下:
```
def quit(self):
login_win.destroy()
def login_clear():
txt_name.delete(0, tk.END)
txt_password.delete(0, tk.END)
login_win = tk.Tk()
login_win.title("登录")
login_win.resizable(False, False)
btn_login = tk.Button(login_win, text="登录", command=login_valid)
btn_login.grid(row=2, column=0, padx=5, pady=5)
quit_button = tk.Button(login_win, text="取消", command=self.quit)
quit_button.grid(row=2, column=1, padx=5, pady=5)
w_width, w_height = 400, 200
s_width = login_win.winfo_screenwidth()
s_height = login_win.winfo_screenheight()
x, y = (s_width - w_width) // 2, (s_height - w_height) // 2
login_win.geometry(f"{w_width}x{w_height}+{x}+{y}")
login_win.withdraw()
```
def quit(self): self.window.destroy() def login_clear(): txt_name.delete(0,tk.END) txt_password.delete(0,tk.END) btn_login = tk.Button(login_win, text="登录", command=login_valid).grid(row=2, column=0,padx=5,pady=5) quit_button = tk.Button(login_win, text="取消", command=self.quit).grid(row=2, column=1,padx=5,pady=5) w_width, w_height = 400, 200 s_width = login_win.winfo_screenwidth() s_height = login_win.winfo_screenheight() x, y = (s_width - w_width) // 2, (s_height - w_height) // 2 login_win.geometry(f"{w_width}x{w_height}+{x}+{y}") window.withdraw()代码有错,帮我改错
在代码中,`self.window`应该改为`login_win`,因为`login_win`是你创建的登录窗口对象。同时,将`quit_button`和`btn_login`定义和布局分开,因为在使用`grid`布局时,需要先定义控件,再进行布局。修改后的代码如下:
```
def quit(self):
login_win.destroy()
def login_clear():
txt_name.delete(0,tk.END)
txt_password.delete(0,tk.END)
login_win = tk.Tk()
login_win.title("登录")
login_win.resizable(False, False)
btn_login = tk.Button(login_win, text="登录", command=login_valid)
btn_login.grid(row=2, column=0,padx=5,pady=5)
quit_button = tk.Button(login_win, text="取消", command=self.quit)
quit_button.grid(row=2, column=1,padx=5,pady=5)
w_width, w_height = 400, 200
s_width = login_win.winfo_screenwidth()
s_height = login_win.winfo_screenheight()
x, y = (s_width - w_width) // 2, (s_height - w_height) // 2
login_win.geometry(f"{w_width}x{w_height}+{x}+{y}")
window.withdraw()
```