Tkinter – die besten Beiträge

Python programmieren, Objektorientierte Programmierung in verschiedenen Dateien mit Klassen?

Hey,

ich lerne aktuell Python und habe angefangen einen Chatbot zu programmieren.
Nun will ich anfangen mir anzugewöhnen in verschiedenen Dateien mit Objektorientierter Programmierung zu programmieren bzw. das erstmal zu lernen.
Mein Gedanke in meinem Code ist z.B. eine Klasse WindowTemplate zu erstellen und diese als Blaupause ohne vorgegebene Werte zu definieren.
An Sich gelingt mir das auch aber ich habe Probleme von einer anderen Klasse aus einer anderen Datei darauf zuzugreifen und die Werte für wie zum Beispiel Größe oder Titel zu übergeben.
Ich würde mich freuen wenn hier mal jemand der etwas Erfahrung hat drauf schauen könnte und mich zumindest mal in die richtige Richtung leiten kann. :)
Viele Dank!

main.py

Fehlermeldung ist diese:

Traceback (most recent call last):

line 17, in <module>

  app = Main()

     ^^^^^^

line 9, in __init__

  self.main_window.set_size("1680", "900")

line 10, in set_size

  self.window_size.geometry(f"{width}x{height}")

  ^^^^^^^^^^^^^^^^^^^^^^^^^

AttributeError: 'NoneType' object has no attribute 'geometry'

import view
import customtkinter as ctk


class Main(ctk.CTk):
    def __init__(self):
        super().__init__()
        self.main_window = view.WindowTemplate()
        self.main_window.set_size("1680", "900")
        self.main_window.set_title("YourTerminal")

    def my_mainloop(self):
        self.mainloop()


if __name__ == "__main__":
    app = Main()
    app.my_mainloop()

view.py

import customtkinter as ctk


class WindowTemplate:
    def __init__(self, window_size=None, window_title=None):
        self.window_size = window_size
        self.window_title = window_title

    def set_size(self, width, height):
        self.window_size.geometry(f"{width}x{height}")

    def set_title(self, title):
        self.window_title.title(title)
Code, Programmiersprache, Python, Python 3, Objektorientierte Programmierung, Tkinter, Pycharm

Python: Wie kann ich feld1 bis feld7 so zusammenfassen, sodass ich das nicht alles einzeln eingeben muss?

Hey, ich möchte feld1 bis feld7 so zusammenfassen, sodass ich das nicht alles einzeln eingeben muss. Dazu finde ich nur leider nichts im Internet.

import tkinter as tk from tkinter import *

modul = tk.Tk()
modul.geometry("900x900")
modul.title("Bunt3x3")
modul.resizable(width=False, height=False)

r = "red"
y = "yellow"
g = "green"
b = "blue"

def change():
  if feld1["bg"] == r:
    feld1.config(bg=g)
    feld3.config(bg=g)
    feld5.config(bg=g)
    feld7.config(bg=g)
    feld2.config(bg=b)
    feld4.config(bg=b)
    feld6.config(bg=b)
    feld8.config(bg=b)

    feldlabel.config(text="Rot & gelb")

  elif feld1["bg"] == g:
    feld1.config(bg=r)
    feld3.config(bg=r)
    feld5.config(bg=r)
    feld7.config(bg=r)
    feld2.config(bg=y)
    feld4.config(bg=y)
    feld6.config(bg=y)
    feld8.config(bg=y)

    feldlabel.config(text="Gruen & blau")

feld1 = tk.Frame(bg=r, width=300, height=300)
feld1.grid(column=1, row=1)
feld3 = tk.Frame(bg=r, width=300, height=300)
feld3.grid(column=3, row=1)
feld5 = tk.Frame(bg=r, width=300, height=300)
feld5.grid(column=1, row=3)
feld7 = tk.Frame(bg=r, width=300, height=300)
feld7.grid(column=3, row=3)
feld2 = tk.Frame(bg=y, width=300, height=300)
feld2.grid(column=2, row=1)
feld4 = tk.Frame(bg=y, width=300, height=300)
feld4.grid(column=1, row=2)
feld6 = tk.Frame(bg=y, width=300, height=300)
feld6.grid(column=3, row=2)
feld8 = tk.Frame(bg=y, width=300, height=300)
feld8.grid(column=2, row=3)

feld = tk.Frame(bg="white", width=300, height=300).grid(column=2, row=2)
feldlabel = tk.Label(text="Gruen & blau", bg="white", fg="black", font=("Arial", 15, "bold"))
feldlabel.grid(column=2, row=2)
feldbutton = tk.Button(text="Farbe aendern!", font=("Arial", 15, "bold"), bg="white", fg="black", command=change).place(x=370, y=470)
modul.mainloop()
programmieren, Array, Informatik, Python, Zusammenfassung, Variablen, list, Tkinter

Customtkinter "master" Parameter beim erstellen von einem Textfeld?

Hey,

ich habe eine Klasse erstellt die ein Hauptfenster erstellt und möchte aus einer anderen klasse einen Textfeld erstellen der sich auf das Hauptfenster bezieht.
So wie ich es verstanden habe braucht man dafür den Parameter "master" um vorzugeben in welchem Fenster nun der Textfeld angezeigt werden soll.
Leider funktioniert das bei mir nicht so richtig. Hat jemand davon Ahnung und kann mir meinen Fehler zeigen?
lieben Dank! :)

main.py

import view
import controller
import customtkinter as ctk

class Main(view.MainWindow):
   def __init__(self):
       super().__init__()
       self.main_window = view.MainWindow()
       self.main_window.set_size("1680", "900")
       self.main_window.set_title("YourTerminal")
       controller.InputBoxMain()# Nach meinem Verständnis muss hier der Master-Parameter angegeben werden. Wie übergebe ich diesen?

   def run(self):
       self.main_window.get_window().mainloop()

if __name__ == "__main__":
    app = Main()
    app.run()

view.py

import customtkinter as ctk


class MainWindow:
   def __init__(self):
       self.window = ctk.CTk()

   def set_size(self, width, height):
       self.window.geometry(f"{width}x{height}")

   def set_title(self, title):
       self.window.title(title)

   def get_window(self):
       return self.window

class WindowTemplate:
   def __init__(self):
       self.window = ctk.CTkToplevel()

   def set_size(self, width, height):
       self.window.geometry(f"{width}x{height}")

   def set_title(self, title):
       self.window.title(title)

   def get_window(self):
       return self.window

# der master Parameter gibt an wo diese Box angezeigt werden soll
class InputBoxTemplate:
    def __init__(self, master):  # Wie übergebe ich den master Parameter?
        self.master = master
        self.box = ctk.CTkEntry(self.master)

    def set_size(self, width, height, y, x):
        self.box.place(width=width, height=height, pady=y, padyx=x)

    def set_placeholder(self, placeholder):
        self.box._placeholder_text(f"{placeholder}")

controller.py

import view
import customtkinter as ctk
import main
class InputBoxMain(view.InputBoxTemplate, main.Main):
    def __init__(self):
        super().__init__()
        self.master = ctk.CTk()
        self.window = view.InputBoxTemplate(self.master)# Oder der Master-Parameter wird hier übergeben? Hier versuche ich master auf ctk.CTk zu beziehen. Das ist das Haupfenster.
        self.window.set_size(200, 200, 10, 10)
        self.window.set_placeholder("Hier steht der Placeholder")

Hier die Fehlermeldung falls relevant:

Traceback (most recent call last):

 File , line 1, in <module>

  import view

 File , line 2, in <module>

  import main

 File , line 2, in <module>

  import controller

 File " line 4, in <module>

  class InputBoxMain(view.InputBoxTemplate, main.Main):

            ^^^^^^^^^^^^^^^^^^^^^

AttributeError: partially initialized module 'view' has no attribute 'InputBoxTemplate' (most likely due to a circular import)

Code, Programmiersprache, Python, Python 3, Objektorientierte Programmierung, Tkinter, Pycharm

stern im tkinter code?

Hallo,

ich soll eine Flagge mit Python und tkinter machen, ich wollte gern die Chile Flagge machen. Die Grundlage habe ich, jetzt fehlt nur noch der Stern. Im Internet hab ich also versucht einen Code zu finden, dieser funktioniert jedoch nicht und folgende Fehlermeldung taucht auf:

 %Run Flagge_Chile.py

Traceback (most recent call last):

 File "F:\WI\01_Python OOP WI\01_Objekte und Klassen\L1_1_Aufgabe_Flagge_HA_Chile.py", line 141, in <module>

  s.zeichnen()

 File "F:\WI\01_Python OOP WI\01_Objekte und Klassen\L1_1_Aufgabe_Flagge_HA_Chile.py", line 83, in zeichnen

  canvas.create_line(self.pos_x0, self.pos_y0, self.pos_x1, self.pos_y1, self.pos_x2, self.pos_y2, self.pos_x3, self.pos_y3, self.pos_x4, self.pos_y4, fill=self.farbe, outline=self.farbe)

 File "F:\S20\Programme\Thonny_3.2.3\lib\tkinter\__init__.py", line 2492, in create_line

  return self._create('line', args, kw)

 File "F:\S20\Programme\Thonny_3.2.3\lib\tkinter\__init__.py", line 2480, in _create

  *(args + self._options(cnf, kw))))

_tkinter.TclError: unknown option "-outline"

Das ist der Programmcode:

import tkinter as tk

class Rechteck:

  # Initialisiert ein Rechteck Objekt mit Standardwerten

  def __init__(self):

    self.breite = 0

    self.hoehe = 0

    self.pos_x = 0

    self.pos_y = 0

    self.farbe = "black"

  def __str__(self):

    return "Dies ist die Klasse 'Rechteck'"

  # Malt auf ein übergebenes "tk.Canvas" Objekt das Rechteck

  def zeichnen(self):

    x_ende = self.pos_x + self.breite

    y_ende = self.pos_y + self.hoehe

    canvas.create_rectangle(self.pos_x, self.pos_y, x_ende, y_ende, fill=self.farbe, outline=self.farbe)

class Kreis:

  def __init__(self):

    self.pos_x = 0

    self.pos_y = 0

    self.radius = 0

    self.farbe = "black"

  def __str__(self):

    return "Dies ist die Klasse 'Kreis'"

  # Malt auf ein übergebenes "tk.Canvas" Objekt den Kreis

  def zeichnen(self):

    # berechne Postion bis wohin gezeichnet werden muss, abhängig vom Radius

    x_beginn = self.pos_x - self.radius

    y_beginn = self.pos_y - self.radius

    x_ende = self.pos_x + self.radius

    y_ende = self.pos_y + self.radius

    canvas.create_oval(x_beginn, y_beginn, x_ende, y_ende, fill=self.farbe, outline=self.farbe)

     

class Stern:

  def __init__(self):

    self.pos_x0 = 0

    self.pos_y0 = 0

    self.pos_x1 = 0

    self.pos_y1 = 0

    self.pos_x2 = 0

    self.pos_y2 = 0

    self.pos_x3 = 0

    self.pos_y3 = 0

    self.pos_x4 = 0

    self.pos_y4 = 0

    self.farbe = "black"

    self.outline = "black"

     

  def __str__(self):

    return "Dies ist die Klasse 'Stern'"

     

  def zeichnen(self):

    canvas.create_line(self.pos_x0, self.pos_y0, self.pos_x1, self.pos_y1, self.pos_x2, self.pos_y2, self.pos_x3, self.pos_y3, self.pos_x4, self.pos_y4, fill=self.farbe, outline=self.farbe)

     

if __name__ == '__main__':

  # GUI Klasse initialisieren

  application = tk.Tk()

  # Hinzufügen einer Zeichenfläche

  canvas = tk.Canvas(application, width=600, height=400)

  canvas.pack()

 

 

  r = Rechteck()

  r.pos_x = 30

  r.pos_y = 30

  r.breite = 200

  r.hoehe = 200

  r.farbe = "blue"

  r.zeichnen()

   

  r.pos_x = 230

  r.pos_y = 30

  r.breite = 390

  r.hoehe = 200

  r.farbe = "white"

  r.zeichnen()

   

  r.pos_x = 30

  r.pos_y = 230

  r.breite = 600

  r.hoehe = 220

  r.farbe = "red"

  r.zeichnen()

   

  s = Stern()

   

  s.pos_x0 = 40

  s.pos_y0 = 70

  s.pos_x1 = 60

  s.pos_y1 = 40

  s.pos_x2 = 80

  s.pos_y2 = 70

  s.pos_x3 = 40

  s.pos_y3 = 50

  s.pos_x4 = 80

  s.pos_y4 = 70

  s.outline = "red"

  s.zeichnen()

 

  # Fokus auf die GUI legen und starten

  tk.mainloop()

Weiß jemand wo der Fehler ist und könnte mir helfen?
Im Voraus schonmal Dankeschön.

programmieren, Code, Informatik, Programmiersprache, Python, Programmcode, Tkinter

Python GUI Tkinter Buttons blinken bei laufender Akutalisierung?

Hallo,

ich möchte mit Phyton und der Bibliothek Tkinter eine GUI für ein Kartenspiel programmieren.

Für das Kartenspiel müssen ständig neue Karten geladen werden.

Das heißt, es wird zum Beispiel andauernd überprüft wie viele Karten die Spieler in der Auslage und in der Hand haben und dementsprechend werden dann Labels und Buttons generiert.

Die Idee ist, einfach laufend die GUI in gewissen Abständen (zum Beispiel einige Dutzend Millisekunden) zu aktualisieren.

Wenn ich das mache blinken die Labels und Buttons aber immer auf.

Nach Recherche soll das daran liegen, dass sie immer wieder in zu kurzen Abständen neu erstellt werden.

Man könnte die GUI natürlich immer nur dann neu erstellen lassen, wenn tatsächlich im Spiel etwas passiert.

Das passiert aber andauernd, weswegen es besser ist, einfach laufend die GUI zu aktualisieren.

Gibt es dafür noch eine andere Methode (Zum Beispiel PyGame anwenden)?

Hier ein Minimalbeispiel:

class DynamicInterfaceApp:
  def __init__(self):
    self.root = Tk()
    self.root.geometry("1000x500")
    self.update_interface_periodically()
  
  def update_interface(self):
    self.my_frame= Frame(self.root, bg="red")
    self.my_frame.place(x=0, y=0, relwidth=1, relheight=1) 
    self.my_button = Button(self.my_frame)
    self.my_button.place(x=0, y=0, width=50, height=50)
   
  def update_interface_periodically(self):
    self.update_interface()
    self.root.after(25, self.update_interface_periodically)

app = DynamicInterfaceApp()
app.root.mainloop()
App, Code, Programmiersprache, Python, Pygame, Tkinter

Wieso ändert Python das Foto zu einem weißen Hintergrund?

Hallo,

ich bin mal wieder beim Coden meines Video Editors auf einen Fehler gestoßen... Folgendes ist ein Ausschnitt meines Codes:

    global Medien_Importierungen, Maximale_Breite, Maximale_Höhe, Tkinter_Bild
    Videopfad = askopenfilename(filetypes =[('Video Files', '*.mp4')])
    Geladenes_Video = cv2.VideoCapture(Videopfad)
    Rückgabe, Einzelbild = Geladenes_Video.read()
    if Einzelbild.shape[0] / Maximale_Höhe > Einzelbild.shape[1] / Maximale_Breite:
        height = Maximale_Höhe
        width = int(Einzelbild.shape[1] * height / Einzelbild.shape[0])
    else:
        width = Maximale_Breite
        height = int(Einzelbild.shape[0] * width / Einzelbild.shape[1])
    Einzelbild = cv2.resize(Einzelbild, (width, height))
    Tkinter_Bild = ImageTk.PhotoImage(image=Image.fromarray(cv2.cvtColor(Einzelbild, cv2.COLOR_BGR2RGB)))
    Thumbnail = Label(Medien, image = Tkinter_Bild)
    if Medien_Importierungen % 2 == 0:
        Thumbnail.place(x = Fenster.winfo_screenwidth() * 0.01 + Maximale_Breite / 2 - Einzelbild.shape[1] / 2, y = Fenster.winfo_screenheight() / 10 + (Fenster.winfo_screenwidth() * 0.01 + Maximale_Höhe) * int(Medien_Importierungen / 2) + Maximale_Höhe / 2 - Einzelbild.shape[0] / 2)
    else:
        Thumbnail.place(x = Fenster.winfo_screenwidth() * 0.11 + Maximale_Breite / 2 - Einzelbild.shape[1] / 2, y = Fenster.winfo_screenheight() / 10 + (Fenster.winfo_screenwidth() * 0.01 + Maximale_Höhe) * int(Medien_Importierungen / 2) + Maximale_Höhe / 2 - Einzelbild.shape[0] / 2)
    Medien_Importierungen += 1

Hier kann man Medien importieren, um sie am Ende auf die Timeline zu ziehen. Hierbei bin ich aber noch nicht weit wie ihr sieht. Auf jeden Fall wird diese Funktion jedes mal beim Drücken eines Buttons ausgeführt und es sollen dann neben- und untereinander die ersten Frames der verschiedenen Videos angezeigt werden. Wenn ich aber ein zweites Medium importiere, ändert sich das davor erstellte Bild zu einem komplett weißen Bild. Meine Frage wäre, wie ich das behebe...

Freue mich auf Hilfe...

Alex

Programmiersprache, Python, Python 3, Tkinter

Wieso zeigt Python das Bild nicht richtig an?

Hallo,

ich bin mal wieder auf ein Problem gestoßen, dass ich mit Google wohl einfach nicht lösen kann...
Folgendes sind die von mir importierten Module:

from tkinter import *
from tkinter.filedialog import askopenfilename
from threading import Thread
from PIL import Image, ImageTk
import cv2
import threading
import os
import time
import pickle

Und ein Ausschnitt des Codes meines Video Editors:

global Medien_Importierungen, Maximale_Breite, Maximale_Höhe
Videopfad = askopenfilename(filetypes =[('Video Files', '*.mp4')])
Geladenes_Video = cv2.VideoCapture(Videopfad)
Rückgabe, Einzelbild = Geladenes_Video.read()
if Einzelbild.shape[0] / Maximale_Höhe > Einzelbild.shape[1] / Maximale_Breite:
    height = Maximale_Höhe
    width = int(Einzelbild.shape[1] * height / Einzelbild.shape[0])
else:
    width = Maximale_Breite
    height = int(Einzelbild.shape[0] * width / Einzelbild.shape[1])
Einzelbild = cv2.resize(Einzelbild, (width, height))
Tkinter_Bild = ImageTk.PhotoImage(image=Image.fromarray(cv2.cvtColor(Einzelbild, cv2.COLOR_BGR2RGB)))
Thumbnail = Label(Medien, image = Tkinter_Bild)
if Medien_Importierungen % 2 == 0:
    Thumbnail.place(x = Fenster.winfo_screenwidth() * 0.01, y = Fenster.winfo_screenheight() / 10 + (Fenster.winfo_screenwidth() * 0.01 + Maximale_Höhe) * (int(Medien_Importierungen / 2)))
else:
    Thumbnail.place(x = Fenster.winfo_screenwidth() * 0.11, y = Fenster.winfo_screenheight() / 10 + (Fenster.winfo_screenwidth() * 0.01 + Maximale_Höhe) * (int(Medien_Importierungen / 2)))
Medien_Importierungen += 1   

Statt einem Bild wird jetzt nur ein weißes Bild angezeigt. Durch das verdoppeln der Zeile, in der ich die Funktion

Geladenes_Video.read()

angewendet habe, wurde auch nichts gelöst...

Bitte helft mir...

Alex

programmieren, Code, Programmiersprache, Python, Python 3, Tkinter

Customtkinter?

Ist es normal dass das erstellen von Labels, Textfelder oder Buttons in Klassen als Vorlage super viel Schreibarbeit ist oder geht das auch eleganter und sauberer?

main:

maclass Main(ctk.CTk):
    def __init__(self):
        super().__init__()
        self.main_window()
        self.chatbot_output = InputBox(self, 1, 1, 10, 10, "s", 500, 500, "#202222", "red", "white", "Gib einen Text ein...")
        self.chatbot_output.grid(row=1, column=1, pady=10, padx=10, sticky="s")
        self.chatbot_input = InputBox(self, 2, 1, 0, 10, "n", 500, 50, "#202222", "red", "white", "Gib einen Text ein...")
        self.chatbot_input.grid(row=2, column=1, pady=0, padx=10, sticky="n")
        self.placeholder = Label(self, 0, 1, 0, 10, "n", 500, 320, "transparent", "transparent", "white", ".")
        self.placeholder.grid(row=0, column=1, pady=0, padx=10, sticky="n")
    def main_window(self):
        height = 920
        width = 1680
        x = (self.winfo_screenwidth()//2)-(width//2)
        y = (self.winfo_screenheight()//2) - (height//2)
        self.geometry(f"{width}x{height}+{x}+{y}")
        self.title("YourTerminal")
        self.grid_columnconfigure(0, weight=0)
        self.grid_rowconfigure(0, weight=0)



if __name__ == "__main__":
    main = Main()
    main.mainloop()
    sys.exit()

Vorlage in einer Klasse und in einer anderen Datei:

class InputBox(ctk.CTkFrame):
    def __init__(self, master, row, column, pady, padx, sticky, width, height, entry_fg_color,frame_fg_color, textcolor, placeholder, *args, **kwargs):
        super().__init__(master, fg_color=frame_fg_color, *args, **kwargs)
        self.set_setup(row, column, pady, padx, sticky, width, height, entry_fg_color, textcolor, placeholder)

    def set_setup(self, row, column, pady, padx, sticky, width, height, entry_fg_color, textcolor, placeholder):
        self.input = ctk.CTkEntry(self,
                                  width=width,
                                  height=height,
                                  fg_color=entry_fg_color,
                                  text_color=textcolor,
                                  placeholder_text=placeholder,
                                  )
        self.input.grid(row=row, column=column, pady=pady, padx=padx, sticky=sticky)
Code, Programmiersprache, Python, Python 3, Tkinter, Pycharm

Tkinter Fehler?

Ich programmiere mit Tkinter einen Taschenrechner zusammen mit einem Video.

Es kommt die ganze zeit die Fehlermeldung "nontype has no attribute get".

Mein code:

import tkinter as tk

calculator = ()

root = tk.Tk()
root.geometry("75x100")
root.title("Taschenrechner")
root.resizable(True, True)

entry_ziv = tk.Entry(root).grid(row=0, column=0)

def add_ziv(ziv):
    entry_ziv.insert(0, ziv)

def show_result():
    result = eval(entry_ziv.get())
    entry.delete(0, tk.END)
    entry_ziv.insert(0, str(result))

button_seven = tk.Button(root, text="7", command=lambda: add_ziv("7")).grid(row=1, column=0)
button_eight = tk.Button(root, text="8",command=lambda: add_ziv("8")).grid(row=1, column=1)
button_nine = tk.Button(root, text="9", command=lambda: add_ziv("9")).grid(row=1, column=2)
button_div = tk.Button(root, text=":", command=lambda: add_ziv(":")).grid(row=1, column=3)

button_four = tk.Button(root, text="4", command=lambda: add_ziv("4").grid(row=2, column=0))
button_five = tk.Button(root, text="5", command=lambda: add_ziv("5")).grid(row=2, column=1)
button_six = tk.Button(root, text="6", command=lambda: add_ziv("6")).grid(row=2, column=2)
button_multiply = tk.Button(root, text="x", command=lambda: add_ziv("x")).grid(row=2, column=3)

tton_one = tk.Button(root, text="1", command=lambda: add_ziv("1")).grid(row=3, column=0)
button_two = tk.Button(root, text="2", command=lambda: add_ziv("2")).grid(row=3, column=1)
button_tree = tk.Button(root, text="3", command=lambda: add_ziv("3")).grid(row=3, column=2)
button_minus = tk.Button(root, text="-", command=lambda: add_ziv("-")).grid(row=3, column=3)

button_execute = tk.Button(root, text="=", command=show_result()).grid(row=4, column=2)
button_plus = tk.Button(root, text="+", command=lambda: add_ziv("+")).grid(row=4, column=3)

root.mainloop()
Code, Python, Tkinter

TypeError: can only concatenate str (not "function") to str?

ich möchte eine ui für mailtm erstellen aber bekomme kein output raus also wenn email ankommen werden sie nicht angezeigt und wenn ich listener eingebe bekomme ich jedes mal den gleichen fehler code

Fehler code:

TypeError: can only concatenate str (not "function") to str

from mailtm import *


def listener(message):
    print("\nSubject: " + message['subject'] + str(listener))
    print("Content: " + message['text'] if message['text'] else message['html'] + str(listener))


test = Email()
print("\nDomain: " + test.domain)

test.register()
print("\nEmail Adress: " + str(test.address))


test.start(listener, interval=3)
print("\nHab Sabr.....")


main = ctk.CTk()
main.geometry("500x320")
main.title("Temp mail By Amjn")


emaila = ctk.CTkEntry(main, placeholder_text="         " + test.address, width=900, font=("Helvetica", 20))
emaila.configure(state="readonly")
emaila._corner_radius = 10
emaila.pack()


Copyt = ctk.CTkLabel(main, text="Copy Email", font=("Helvetica", 20))
Copyt.pack()


def neuw(self=None):
    neu = ctk.CTkToplevel(main)
    neu.title("Emails              (MADE BY AMJN)")
    neu.geometry("500x320")
    neu.corner_radius = 30
    neu.resizable(width=True, height=True)

    Ausg = ctk.CTkEntry(neuw, placeholder_text=("         ") + listener, width=900, font=("Helvetica", 20))
    Ausg.pack()


knopf = ctk.CTkButton(main, text="Emails", font=("Helvetica", 20), command=neuw)
knopf.pack(pady=20)

main.mainloop()
Code, Programmiersprache, Python, UI, Python 3, Tkinter, Pycharm

Meistgelesene Beiträge zum Thema Tkinter