با سلام بهنام صباغی هستم با اموزش gui با کتابخانه tkinter این قسمت dialog
دیالوگ برای زمانی کاربرد داره که میخواید به کاربر پیامی رو نمایش بدید و یا نظرش رو بپرسید با یه مثال ساده شروع میکنم
#***********************CODE**********************
from tkinter import messagebox

messagebox.showinfo(title='error',message="you dont undrestand if don't  exercise")
#***************************************************
میبینید که اول یک پنجره اصل نمایش داده میشه و بعد پیام اخطار اجرا میشه چون رای اجرای پیام نیاز به یک پنجره اصلی داریم و سه مدل از این دیالوگ ها داریم که از اسمشون معلومه برای چه کاری هستند
1 - showinfo()
2 - showwarning()
3 - showerror()

همشون مثل همون بالایی هستند یک عنوان (title) و یک پیام (message) دارند و حالا اگر بخوایم یک سوال از کاربر بپرسیم از
1 - askyesno()
2 - askokcancel()
3 - askretrycancel()
4 - askyesnocancel()
5 - askquestion()
مثال
#**************************CODE**********************
from tkinter import messagebox

messagebox.askquestion(title='error',message="you dont undrestand if don't  exercise")
#***************************************************
و حالا برای فایل اول مثال زیر رو ببینید
#****************************CODE*************************
from tkinter import filedialog

filename =filedialog.askopenfile()

print(filename.name)
#**********************************************************
برای باز کردن فایل ها از توابع زیر استفاده میکنیم
1 - askopenfile(mode)
2 - askopenfiles(mode)
3 - askopenfilename()
4 - askopenfilenames()
وقتی فایل رو انتخاب میکنیم ادرسش برگردونده میشه که ما توی filenameذخیرش کردیم و برای استفاده از name که متعلق به filename هست استفاده میکنیم
راستی دقت کنید این کار فایل رو باز نمیکنه فقط ادرس رو میگیه برامون و باید خودمون بازش کنیم و حالا برای سیو کردن
1 - askdirectory()
2 - asksaveasfile(mode)
3 - asksaveasfilename()
4 - asksaveasfilename()
#****************************CODE************************
from tkinter import filedialog

filename =filedialog.askopenfile()

print(filename)
#**************************************************
دقت کنید این دومی ها که برای سیو هستند از filename.name استفاده نمیکنیم خود filename رو استفاده میکنیم
خب حالا اخری رو میگم که برای انتخاب رنگ استفاده میشه باید اول colorchooser رو از ماژول tkinter ایمپورت کنم و بعد از تابع مورد نیاز استفاده کنم مثال زیر رو ببینید
#*****************************CODE*********************
from tkinter import colorchooser
color =colorchooser.askcolor(initialcolor='#FFFFFF')

print(color)
#************************************************
همونطور که میبینید اینجا color یه تاپله که دوتا عضو داره اولیش خودش یه تاپل دیگست که سه تا عدد rgb یعنی قرمز سبز ابی رو داره و دومی عدد هگزای رنگ هست همون کدی که توی html هم کاربرد زیادی داره و ما هم قبلا ازش استفاده کردیم
یه نگته دیگه این که اگر کاربر توی هرکدوم از این موارد ضربدر رو بزنه و خارج بشه None  ذخیره میشه پس یادتون باشه اگر از اینها استفاده کردید چک کنید و یا با try استفاده کنید از اینها
خدا یار و نگهدارتون