Блог веб разработки

Блог веб-разработки статьи | видеообзоры | исходный код

Диалоговые окна tkinter

Приветствую вас дорогие друзья! Сегодня мы с вами познакомимся с двумя основными диалоговыми окнами которые есть практически в любой программе. И научимся их создавать средствами библиотеки tkinter. Поехали!

Для диалоговых окон в библиотеке tkinter есть отдельный модуль который мы должны будем подключить.

from tkinter.filedialog import *

За создание диалогового окна 'Открыть файл' отвечает класс askopenfilename.

from tkinter import *
from tkinter.filedialog import * 
window = Tk()
window.title('Открыть и сохранить файл')
open_file = askopenfilename()
window.mainloop()

Как видите с запуском нашего основного окна программы появилось диалоговое окно в котором нам предлагается выбрать файл на нашем рабочем компьютере. За создание такого окна отвечает следующая строчка

open_file = askopenfilename()

Для того чтобы появилось диалоговое окно 'Сохранить файл' мы должны воспользоваться классом asksaveasfilename.

from tkinter import *
from tkinter.filedialog import * 

window = Tk()
window.title('Открыть и сохранить файл')
save_file = asksaveasfilename()
window.mainloop()

В результате выполнения данного кода у нас появится диалоговое окно 'Сохранить как'.

В программах данные окна вызываются когда мы кликаем по кнопкам открыть и сохранить как. Давайте реализуем подобное поведение.

from tkinter import *
from tkinter.filedialog import * 

window = Tk()
window.title('Открыть и сохранить файл')
menu = Menu()
window.config(menu=menu)
def open_file():
    open_file = askopenfilename()
def save_file():
    save_file = asksaveasfilename()

menu.add_command(label='Открыть', command=open_file)
menu.add_command(label='Сохранить как', command=save_file)

window.mainloop()
Диалоговые окна в tkinter

Здесь мы написали небольшую програмку в главном окне которого располагается верхнее меню с двумя кнопками 'Открыть' и 'Сохранить как'.

Напишем небольшую программу используя полученные знания:

from tkinter import *
from tkinter.filedialog import *
import fileinput

window = Tk()
window.title('Открыть и сохранить файл')
menu = Menu()
text = Text(window,width=40,height=10,
          font="Verdana 12")

window.config(menu=menu)
def open_file():
    text.delete('1.0',END)
    open_file = askopenfilename()
    for i in fileinput.input(open_file):
        text.insert(END,i)
        
def save_file():
    save_file = asksaveasfilename()
    save_file = asksaveasfilename()
    context = text.get(1.0,END)
    file = open(save_file,"w")
    file.write(context)
    file.close()

menu.add_command(label='Открыть', command=open_file)
menu.add_command(label='Сохранить как', command=save_file)

text.pack()
window.mainloop()

С помощью данной программы мы можем открывать, читать и переписывать содержимое txt файлов. Заметьте что для считывания содержимого файлов мы подключили модуль fileinput.

На этом данная статья подошла к концу. Надеюсь я смог донести до вас новую информацию. Если что то было не понятно оставляйте свои вопросы в комментариях или пишите в службу поддержки. С радостью на них отвечу!

До скорой встречи!

Оцените статью

Еще статьи

Трейты php

gitignore GIT

Метки GIT

css отражение

tkinter меню python

карта изображения html

Маски css

SQL html

output html

Комментарии

Проверочный код

В данном разделе пока нет комментариев!

История

    ПОДПИСКА

    • Подпишись и получай информацию о выходе новых статей на почту! Просто введите свою почту, нажмите кнопку подписаться. На почту должно будет прийти сообщение с потверждением подписки. Если сообщение не пришло проверьте раздел спам или попробуйте другую почту. Также по всем техническим проблемам вы можете написать в поддержку

    НОВОСТИ

    • Всем привет! Запустил новый сервис для поиска и бесплатного скачивания, прослушивания аудиокниг. Здесь вы можете найти множество литературы и прослушать ее. Вскоре возобновлю написание статей.