想让一个函数在弹窗中运行,请问messagebox 可以吗,不可以的话有没有其他办法?
1条回答 默认 最新
- 爱看书的小沐 2022-07-26 14:10关注
(1)使用消息弹出窗口(tkinter.messagebox)
在Tkinter包下的message模块下提供了大量的工具函数来生成各种下消息框
messagebox的工具函数大致分为图标区、提示区和按钮区。import tkinter import tkinter.messagebox #弹窗库 #1、提示消息框 tkinter.messagebox.showinfo('提示','今天星期一') #2、消息警告框 tkinter.messagebox.showwarning('警告','明日有大雨') #3、错误消息框 tkinter.messagebox.showerror('错误','系统崩溃了!') #4、对话框 tkinter.messagebox.askokcancel('提示', '要执行此操作吗')#确定/取消,返回值true/false tkinter.messagebox.askquestion('提示', '要执行此操作吗')#是/否,返回值yes/no tkinter.messagebox.askyesno('提示', '要执行此操作吗')#是/否,返回值true/false tkinter.messagebox.askretrycancel('提示', '要执行此操作吗')#重试/取消,返回值true/false #5、文件对话框 import tkinter.filedialog a=tkinter.filedialog.asksaveasfilename()#返回文件名 print(a) a =tkinter.filedialog.asksaveasfile()#会创建文件 print(a) a =tkinter.filedialog.askopenfilename()#返回文件名 print(a) a =tkinter.filedialog.askopenfile()#返回文件流对象 print(a) a =tkinter.filedialog.askdirectory()#返回目录名 print(a) a =tkinter.filedialog.askopenfilenames()#可以返回多个文件名 print(a) a =tkinter.filedialog.askopenfiles()#多个文件流对象 print(a)
(2)使用自定义窗口(tkinter.simpledialog)
from tkinter import * from tkinter import simpledialog # Create an object of TK (tkinter window) window = Tk() window.geometry("300x200") window.title("计算费波那契数列") # 计算费波那契数列 def fib(n): a, b = 1, 1 for i in range(n-1): a, b = b, a+b return a def stringdialogbox(): # this method accepts float and returns float input_val = simpledialog.askinteger("Input","Enter your number:", parent=window) output_val = fib(input_val) dialog_output = Label(window, text=f'The result is {output_val}',font=('italic 12')) dialog_output.pack(pady=20) dialog_btn=Button(window,text='dialog button',command=stringdialogbox) dialog_btn.pack() window.mainloop()
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 Stata链式中介效应代码修改
- ¥15 latex投稿显示click download
- ¥15 请问读取环境变量文件失败是什么原因?
- ¥15 在若依框架下实现人脸识别
- ¥15 添加组件无法加载页面,某块加载卡住
- ¥15 网络科学导论,网络控制
- ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
- ¥15 metadata提取的PDF元数据,如何转换为一个Excel
- ¥15 关于arduino编程toCharArray()函数的使用
- ¥100 vc++混合CEF采用CLR方式编译报错