Text. Работа с текстовыми полями
⇐ ПредыдущаяСтр 2 из 2
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; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!