¿Cómo se muestra un cuadro de diálogo que hace al usuario una pregunta de opción múltiple utilizando tkInter?

De todos modos, he estado buscando una función tkinter que haga al usuario una pregunta de opción múltiple, lo más cercano que he encontrado es messagebox.asknoyes, pero solo ofrece 2 opciones, además, no puedo editar las opciones como son fijos (Sí o No), ¿hay una función tkinter que hace lo que estoy buscando?

Nota: este no es un posible duplicado de Tomar entrada del usuario en Tkinter, ya que esa pregunta pregunta cómo tomar la entrada del usuario, por lo que el usuario puede enviar cualquier entrada que desee, mientras que quiero darle al usuario una opción predefinida para elegir uno

No creo que haya una función incorporada para eso. Creo que tendrá que crear manualmente una ventana, agregarle botones y tags de radio manualmente, esperar a que el usuario responda y, a continuación, verificar manualmente qué botón de radio se seleccionó.

Afortunadamente, esto es bastante sencillo, por lo que hice una implementación rápida para usted.

from tkinter import Tk, Label, Button, Radiobutton, IntVar # ^ Use capital T here if using Python 2.7 def ask_multiple_choice_question(prompt, options): root = Tk() if prompt: Label(root, text=prompt).pack() v = IntVar() for i, option in enumerate(options): Radiobutton(root, text=option, variable=v, value=i).pack(anchor="w") Button(text="Submit", command=root.destroy).pack() root.mainloop() if v.get() == 0: return None return options[v.get()] result = ask_multiple_choice_question( "What is your favorite color?", [ "Blue!", "No -- Yellow!", "Aaaaargh!" ] ) print("User's response was: {}".format(repr(result)))