Re: komme nicht weiter
Verfasst: Donnerstag 29. Januar 2026, 20:33
ich denke mit login(sammelstring) wird der sammelstring an def(): übergeben, result macht nix, den es gibt ja kein return.
Seit 2002 Diskussionen rund um die Programmiersprache Python
https://www.python-forum.de/
"result" ist ein Name. Dem wird hier ein Wert zugewiesen (linke Seite vom = ). Wie denkst du, könnte das etwas tun?StMan hat geschrieben: Donnerstag 29. Januar 2026, 20:33 ich denke mit login(sammelstring) wird der sammelstring an def(): übergeben, result macht nix, den es gibt ja kein return.
Code: Alles auswählen
login(sammelstring) # Ruft die Funktion "login" auf und übergibt als einzigen Parameter semmelstring
result = login(name) # Ruft die Funktion "login" auf, übergibt als einzigen Parameter "name" und bindet den Rückgabewert (return value) an den Namen result.
Code: Alles auswählen
import tkinter as tk
from tkinter import ttk, messagebox
class Application:
def login(self, host, username, password):
print(f"Attempting login for user: {username} at {host}")
class LoginWindow:
def __init__(self, root, app):
self.root = root
self.app = app
root.title("Login")
root.resizable(False, False)
pad = {"padx": 8, "pady": 6}
frame = ttk.Frame(root)
frame.grid(column=0, row=0, sticky="nsew")
# Host
ttk.Label(frame, text="Host:").grid(column=0, row=0, sticky="w", **pad)
self.host_var = tk.StringVar(value="localhost")
ttk.Entry(frame, textvariable=self.host_var, width=30).grid(column=1, row=0, **pad)
# Username
ttk.Label(frame, text="Username:").grid(column=0, row=2, sticky="w", **pad)
self.user_var = tk.StringVar()
ttk.Entry(frame, textvariable=self.user_var, width=30).grid(column=1, row=2, **pad)
# Password
ttk.Label(frame, text="Password:").grid(column=0, row=3, sticky="w", **pad)
self.password_var = tk.StringVar()
ttk.Entry(frame, textvariable=self.password_var, show="*", width=30).grid(column=1, row=3, **pad)
# Buttons
button_frame = ttk.Frame(frame)
button_frame.grid(column=0, row=4, columnspan=2, pady=(6, 0))
ttk.Button(button_frame, text="Connect", command=self.on_connect).grid(column=0, row=0, padx=4)
ttk.Button(button_frame, text="Quit", command=root.destroy).grid(column=1, row=0, padx=4)
# Status label
self.status_var = tk.StringVar(value="")
ttk.Label(frame, textvariable=self.status_var, foreground="blue").grid(column=0, row=5, columnspan=2, **pad)
# store connection
self.conn = None
def on_connect(self):
host = self.host_var.get().strip()
user = self.user_var.get().strip()
password = self.password_var.get()
if not host or not user:
messagebox.showwarning("Missing fields", "Please provide host and username.")
return
try:
self.app.login(host, user, password)
except Exception as e:
messagebox.showerror("Login failed", str(e))
def main():
app = Application()
root = tk.Tk()
_ = LoginWindow(root, app)
root.mainloop()
if __name__ == "__main__":
main()