Text. Работа с текстовыми полями



Python Проверка
Напишите программу, состоящую из однострочного и многострочного текстовых полей и двух кнопок "Открыть" и "Сохранить". При клике на первую должен открываться на чтение файл, чье имя указано в поле класса Entry, а содержимое файла должно загружаться в поле типа Text. При клике на вторую кнопку текст, введенный пользователем в экземпляр Text, должен сохраняться в файле под именем, которое пользователь указал в однострочном текстовом поле. Файлы будут читаться и записываться в том же каталоге, что и файл скрипта, если указывать имена файлов без адреса. Для выполнения практической работы вам понадобится функция open() языка Python и методы файловых объектов чтения и записи. from tkinter import * root=Tk() root.title('Window') root.geometry('500x240')   defop(): txt.delete(1.0,END) a=ent.get() f=open('my_file.txt') while True:    t=f.readline()    if not t: break txt.insert(END, t) f.close()   defsv(): a=ent.get() z=open('my_file.txt','w') b=txt.get(1.0,END) z.write(b) z.close()   rootmenu=Menu(root) rootmenu.add_command(label='Открыть',command=op) rootmenu.add_command(label='Сохранить',command=sv) root.config(menu=rootmenu)   filemenu=Menu(rootmenu,tearoff=0)   ent=Entry()   txt=Text()     ent.pack() txt.pack() root.mainloop()

Практическая работа 3.5 (2 часа)

Решение задач с использованием виждетовRadiobatton и Checkbutton

Python Проверка
Напишите программу выбора цвета и количества шаров по образцу. from tkinter import * root=Tk() lab1 = Label(root, text="Cколькоштук?", font="Arial 16") var=IntVar() var.set(0) rad0 = Radiobutton(root,text="0-10", variable=var,value=0) rad1 = Radiobutton(root,text="11-20", variable=var,value=1) rad2 = Radiobutton(root,text="21-30", variable=var,value=2) rad3 = Radiobutton(root,text="31-40", variable=var,value=3) lab11 = Label(root, text="Какогоцвета?", font="Arial 16") c1 = IntVar() c2 = IntVar() c3 = IntVar() c4 = IntVar() che1 = Checkbutton(root,text="RED",fg="black", bg="red", variable=c1,onvalue=1,offvalue=0) che2 = Checkbutton(root,text="BLUE",fg="black", bg="blue", variable=c2,onvalue=5,offvalue=0) che3 = Checkbutton(root,text="GREEN",fg="black", bg="lightgreen", variable=c3,onvalue=1,offvalue=0) che4 = Checkbutton(root,text="YELLOW",fg="black", bg="yellow",variable=c4,onvalue=5,offvalue=0) lab1.pack() rad0.pack() rad1.pack() rad2.pack() rad3.pack() lab11.pack() che1.pack() che2.pack() che3.pack() che4.pack() root.mainloop()
Напишите программу, в которой имеется несколько объединенных в группу радиокнопок, индикатор которых выключен (indicatoron=0). Если какая-нибудь кнопка включается, то в метке должна отображаться соответствующая ей информация. Обычных кнопок в окне быть не должно. fromtkinterimport * root=Tk() root.title('Упаковщики', ) root.geometry('540x300')   b_var=IntVar()   defStar1(): lbl2.configure(text='это менеджер геометрии, который размещает виджеты, \n используя абсолютное позиционирование.') def Star2(): lbl2.configure(text='это менеджер геометрии, который размещает виджеты по горизонтали и вертикали.') def Star3(): lbl2.configure(text='это менеджер геометрии, который размещает виджеты в двухмерной сетке.') lbl1=Label(text='Выберитеметод') ra1=Radiobutton(text='Place', variable=b_var, value=1, command=Star1) ra2=Radiobutton(text='Pack', variable=b_var, value=2, command=Star2) ra3=Radiobutton(text='Grid', variable=b_var, value=3, command=Star3) lbl2=Label(bg="#007dff")   lbl1.pack() ra1.pack() ra2.pack() ra3.pack() lbl2.pack() root.mainloop()

Практическая работа 3.6

Работа со списками

Python Проверка
Напишите программу выбора языка программирования по образцу. from tkinter import * root=Tk() root.title(' ') root.geometry('120x70') lbx=Listbox() for i in ('Pascal','Java','C#','Python'): lbx.insert(0,i)   lbx.pack() root.mainloop()
Напишите программу, состоящую из двух списков Listbox. В первом будет, например, перечень товаров, заданный программно. Второй изначально пуст, пусть это будет перечень покупок. При клике на одну кнопку товар должен переходить из одного списка в другой. При клике на вторую кнопку – возвращаться (человек передумал покупать). Предусмотрите возможность множественного выбора элементов списка и их перемещения. from tkinter import * root=Tk() root.title('Покупки') root.geometry('380x200')   pay=Button(text='Купить') dpay=Button(text='Передумал')   lbs1=('Соль','Хлеб','Курица','Макарон','Апельсин', 'Мандарин','Капуста','Картошка','Салат','Омар') lbs2=()   lbx1=Listbox() for i in lbs1: lbx1.insert(0,i)   lbx2=Listbox() for i in lbs2: lbx2.insert(0,i)   defpp(): s=list(lbx1.curselection()) p=int(s[0]) z=lbx1.get(p) lbx2.insert(END,z) lbx1.delete(p)   defdpp(): s=list(lbx2.curselection()) p=int(s[0]) z=lbx2.get(p) lbx1.insert(END,z) lbx2.delete(p)   pay=Button(text='Купить', command=pp) dpay=Button(text='Передумал', command=dpp)   lbx1.pack(side=LEFT) lbx2.pack(side=RIGHT) pay.pack(side=LEFT) dpay.pack(side=RIGHT) root.mainloop()

 


Дата добавления: 2021-01-20; просмотров: 1122; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!