-2
我的GUI編號有些問題遊戲: 我希望用戶輸入一個正數(大於零的Interger)。不是浮動。沒有逗號,我可以刪除它們(雖然我不知道如何) If_Else和異常處理概念對我而言仍然是新的。Python 3 - 彈出窗口不按要求顯示
問題我正在面對:我想彈出輸入錯誤信息時出現的框。
from tkinter import *
from tkinter import ttk
class App(Tk):
def __init__(self):
Tk.__init__(self)
self.Number()
self.Output()
def Number(self):
Label (self, text = "Enter a positive whole number!").grid(row=1, column = 0)
self.Number = Entry(self)
self.Number.grid(row = 1, column = 1)
def Output(self):
self.btn = Button(self, text = "Check the number")
self.btn.grid(row = 8, column = 1)
self.btn["command"] = self.calculate
def calculate(self):
#Type cast the tkinter Entry to be an int
self.Number = int(self.Number.get())
#Print the class type of the variable self.Number:
print (type(self.Number))
#If the interger is equal to zero, display a custom popup box
if self.Number == 0:
self.newWindow = Toplevel(self)
Label(self.newWindow, text = "Please enter a number greater than zero!").grid()
self.newWindow.grid()
#Else if the number is less than zero, display a custom pop up box
elif self.Number <= 0:
self.newWindow = Toplevel(self)
Label(self.newWindow, text="Plase enter a positive whole number!")
self.newWindow.grid()
#Check to see if anything has been input at all
#Else if the length of the user's input is 0/null, display a custom pop up
elif len(self.Number) == 0:
self.newWindow = Toplevel(self)
Label(self.newWindow, text = "Please enter a number greater than zero!").grid()
self.newWindow.grid()
#Else if the number is not equal to an int, display a custom pop up
elif self.Number != int:
self.newWindow = Toplevel(self)
Label(self.newWindow, text = "Please enter a number greater than zero!").grid()
self.newWindow.grid()
你是什麼意思*做 「有一些麻煩,」 *?給一個[mcve]。 – jonrsharpe
無論我做什麼彈出框都不會出現,並且我一直在IDLE窗口中出現錯誤。 – cparks10
*什麼*錯誤?! – jonrsharpe