Ich arbeitete an dem Entwerfen eines Programms mit 2 Fenstern für die Konvertierung. Einer für Kilometer bis Meilen und der andere Kilometer bis Kilometer. Das GUI-Meldungsfeld hat zwei Stellen zum Tippen, aber nur die Kilomiles-Box gibt mir Ergebnisse. Ich habe verschiedene Dinge ausprobiert, aber ich habe nicht herausfinden kann, wie es zu bekommen, damit die Schaltfläche zu konvertieren für egal arbeitet, die ich Feld eingeben in.Python-GUI-Programm, zwei Konvertierungen
import tkinter
import tkinter.messagebox
class MyGUI:
def __init__(self):
# Create the main window widget.
self.main_window = tkinter.Tk()
# Create two frames
self.top_frame = tkinter.Frame(self.main_window)
self.bottom_frame = tkinter.Frame(self.main_window)
# Create three Label widgets for the
# top frame.
self.label1 = tkinter.Label(self.top_frame, \
text='Lets Have Fun')
self.label2 = tkinter.Label(self.top_frame, \
text='Calculate Distance')
self.prompt_label = tkinter.Label(self.top_frame, \
text='Enter how many kilometers you drove today:')
self.kilo_entry = tkinter.Entry(self.top_frame, \
width=10)
self.prompt_label2 = tkinter.Label(self.top_frame, \
text='Enter how many miles you drove today:')
self.miles_entry = tkinter.Entry(self.top_frame, \
width=10)
# Pack the labels that are in the top frame.
# Use the side='top', 'left' and 'bottom' arguments to stack them
# one on top of the other.
self.label1.pack(side='top')
self.label2.pack(side='top')
self.prompt_label.pack(side='left')
self.kilo_entry.pack(side='left')
self.prompt_label2.pack(side='left')
self.miles_entry.pack(side='left')
self.top_frame.pack()
self.bottom_frame.pack()
self.my_button = tkinter.Button(self.main_window, \
text='What if I dont know?', \
command=self.do_something)
self.calc_button = tkinter.Button(self.top_frame, \
text='Convert', \
command=self.convert)
self.quit_button = tkinter.Button(self.main_window, \
text='Quit', \
command=self.main_window.destroy)
self.my_button.pack()
self.quit_button.pack()
self.calc_button.pack()
tkinter.mainloop()
def do_something(self):
tkinter.messagebox.showinfo('Response', \
'Just enter your favorite number.')
miles = 0.00
miles == " "
def convert(self):
# Get the value entered by the user into the
# kilo_entry widget.
kilo = float(self.kilo_entry.get())
# Convert kilometers to miles.
miles = kilo * 0.6214
# Display the results in an info dialog box.
tkinter.messagebox.showinfo('Results', \
str(kilo) + ' kilometers is equal to ' + \
str(miles) + ' miles.')
def convert2(self):
if self.kilo_entry == " ":
convert2(self)
else:
convert(self)
tkinter.mainloop()
# Get the value entered by the user into the
# kilo_entry widget.
miles = float(self.miles_entry.get())
# Convert kilometers to miles.
kilo = (miles)/(0.6214)
# Display the results in an info dialog box.
tkinter.messagebox.showinfo('Results', \
str(miles) + ' miles is equal to ' + \
str(kilo) + ' kilo.')
my_gui = MyGUI()
Vielen Dank!
den Einzug Bitte beheben. –