Python tkinter Rechtsklick

  • Das Event-Objekt liefert die Koordinaten (event.x, event.y) relativ zum Fenster.
  • Mit .place() kannst du den Button genau an dieser Position einfügen.
  • Jeder Rechtsklick erzeugt einen weiteren Button.
import tkinter as tk

def create_button(event):
    # Erzeuge neuen Button an der Position des Rechtsklicks
    btn = tk.Button(root, text="Neuer Button")
    btn.place(x=event.x, y=event.y)

root = tk.Tk()
root.geometry("400x300")

# Rechtsklick auf das Fenster erzeugt einen neuen Button
root.bind("<Button-3>", create_button)

root.mainloop()

Um mit einem Rechtsklick eine Option zur Löschung des Buttons anzuzeigen, kannst du das Kontextmenü (Popup-Menü) von Tkinter verwenden und das Löschen mit der destroy()-Methode umsetzen. Hier ein kompaktes Beispiel:

import tkinter as tk

def delete_button():
          b1.destroy()

def show_menu(event):
         menu.tk_popup(event.x_root, event.y_root)

root = tk.Tk()
root.geometry('300x500')

b1 = tk.Button(root, text="Beispielbutton")
b1.pack()

menu = tk.Menu(root, tearoff=0)
menu.add_command(label="Löschen", command=delete_button)

b1.bind("<Button-3>", show_menu)  # Rechtsklick-Bindung

root.mainloop()