Похожие презентации:
14 Лекция
1. Дәріс 14. Терезелер
Терезелер құру. Негізгі терезе, қосымша терезелер. Терезені жою.Объектіге бағытталған стильдегі терезені анықтау. Басқа
терезелердің үстіндегі терезе. Хабарлама терезелері. Диалогтық
терезелер
2. Мысалы, батырманы басу арқылы жаңа терезе ашамыз:
• from tkinter import *• from tkinter import ttk
• root = Tk()
• root.title("Негізгі Терезе")
• root.geometry("250x200")
• def click():
window = Tk()
window.title("Жаңа терезе")
window.geometry("250x200")
• button = ttk.Button(text="Создать окно", command=click)
• button.pack(anchor=CENTER, expand=1)
• root.mainloop()
3. Негізгі терезе сияқты, қосымша терезелерде виджеттер болуы мүмкін. Мысалы, жаңа терезеде белгініанықтайық:
Негізгі терезе сияқты, қосымша терезелерде виджеттерболуы мүмкін. Мысалы, жаңа терезеде белгініанықтайық
from tkinter import *
from tkinter import ttk
root = Tk()
root.title("Негізгі Терезе")
root.geometry("250x200")
def click():
window = Tk()
window.title("Жаңа терезе")
window.geometry("250x200")
button = ttk.Button(text="Создать окно", command=click)
button.pack(anchor=CENTER, expand=1)
root.mainloop()
:
4. Терезені жою Терезені жою үшін destroy()әдісі қолданылады
from tkinter import *
from tkinter import ttk
root = Tk()
root.title("METANIT.COM")
root.geometry("250x200")
def click():
window = Tk()
window.title("Новое окно")
window.geometry("250x200")
close_button = ttk.Button(window, text="Закрыть окно", command=lambda: window.destroy())
close_button.pack(anchor="center", expand=1)
open_button = ttk.Button(text="Создать окно", command=click)
open_button.pack(anchor="center", expand=1)
root.mainloop()
5. Объектіге бағытталған стильдегі терезені анықтау Жоғарыдағы мысалда жаңа терезе, оның параметрлері және кірістірілген виджеттер
tkinter import *from tkinter import ttk
class Window(Tk):
def __init__(self):
super().__init__()
# конфигурация окна
Объектіге бағытталған стильдегі
self.title("Новое окно")
терезені анықтау
self.geometry("250x200")
Жоғарыдағы мысалда жаңа терезе,
# батырмаларды анықтай
self.button = ttk.Button(self, text="закрыть")
оның параметрлері және кірістірілген
self.button["command"] = self.button_clicked
self.button.pack(anchor="center", expand=1)
виджеттер функцияның ішінде
def button_clicked(self):
анықталды, бірақ бұл функция кодтың
self.destroy()
үлкеюіне әкеледі. Терезенің анықтауды
= Tk()
бөлек класта шығару әлдеқайда жеңіл: root
root.title("METANIT.COM")
root.geometry("from 250x200")
def click():
window = Window()
open_button = ttk.Button(text="Создать окно", command=click)
open_button.pack(anchor="center", expand=1)
root.mainloop()
6.
Басқа терезелердің үстіндегі терезеНегізгі терезенің үстінде орналасқан диалогтық терезені құру үшін Toplevel класы
қолданылады:
from tkinter import *
from tkinter import ttk
1
root = Tk()
root.title("Главное окно")
root.geometry("250x200")
def dismiss(window):
window.grab_release()
window.destroy()
def click():
window = Toplevel()
window.title("Новое окно")
window.geometry("250x200")
window.protocol("WM_DELETE_WINDOW", lambda: dismiss(window)) #
перехватываем нажатие на крестик
close_button = ttk.Button(window, text="Закрыть окно", command=lambda:
dismiss(window))
close_button.pack(anchor="center", expand=1)
window.grab_set()
# захватываем пользовательский ввод
open_button = ttk.Button(text="Создать окно", command=click)
open_button.pack(anchor="center", expand=1)
root.mainloop()
7. Tkinter-де әртүрлі жағдайларға арналған бірқатар кіріктірілген терезелер бар, атап айтқанда tkinter.messagebox. модулінде
Хабарлама терезелеріTkinter-де әртүрлі жағдайларға арналған бірқатар
кіріктірілген терезелер бар, атап айтқанда
tkinter.messagebox. модулінде функционалдығы бар
хабарлама терезелері. Хабарламаларды көрсету үшін бұл
модуль келесі мүмкіндіктерді ұсынады:
showinfo (): қандай да бір ақпаратты көрсетуге арналған
showerror (): қателерді көрсетуге арналған
showwarrning (): ескертулерді көрсетуге арналған
8. Toplevel-бұл басқа терезелердің үстінде орналасқан TK терезесі. Мысалда ол терезеде батырма құрылған. Сонымен қатар,
ToplevelToplevel-бұл басқа терезелердің үстінде орналасқан TK терезесі.
Мысалда ол терезеде батырма құрылған. Сонымен қатар,
пайдаланушы осы диалогтық терезені жаппайынша негізгі терезеге
орала алмауы үшін бірқатар әдістер қолданылады. Ең алдымен,
grab_set()әдісі арқылы барлық пайдаланушы енгізуін қоршап алуға
болады:
1 window.grab_set()
Терезені жабатын dismiss () функциясында grab_release()әдісі арқылы
енгізуді болдырмауға болады
window.grab_release()
9. from tkinter import * from tkinter import ttk from tkinter.messagebox import showerror, showwarning, showinfo root = Tk()
Шындығында, хабарламалардың осы түрлерінің арасындағыайырмашылық тек хабарлама мәтінінің жанында көрсетілетін суретте
болады
from tkinter import *
from tkinter import ttk
from tkinter.messagebox import showerror, showwarning, showinfo
root = Tk()
root.title("METANIT.COM")
root.geometry("250x200")
def open_info():
showinfo(title="Информация", message="Информационное сообщение")
def open_warning():
showwarning(title="Предупреждение", message="Сообщение о предупреждении")
def open_error():
showerror(title="Ошибка", message="Сообщение об ошибке")
info_button = ttk.Button(text="Информация", command=open_info)
info_button.pack(anchor="center", expand=1)
warning_button = ttk.Button(text="Предупреждение", command=open_warning)
warning_button.pack(anchor="center", expand=1)
error_button = ttk.Button(text="Ошибка", command=open_error)
error_button.pack(anchor="center", expand=1)
root.mainloop()
Мұнда үш батырманың әрқайсысын басу
арқылы тиісті хабарлама көрсетіледі
10. Tkinter.messagebox модулі сонымен қатар операцияны растау үшін пайдаланушыдан екі түйменің бірін басуға болатын бірқатар
Операцияны растау терезелеріTkinter.messagebox модулі
сонымен қатар операцияны растау үшін
пайдаланушыдан екі түйменің бірін басуға
болатын бірқатар мүмкіндіктерді ұсынады:
askyesno()
askokcancel()
askretrycancel()
11. Терезені жою Терезені жою үшін destroy()әдісі қолданылады
Бұл мүмкіндіктердің барлығы бірдей үш тақырып, хабарлама жәнеопциялар параметрін қабылдайды. Олардың арасындағы
айырмашылық тек батырмаларда әртүрлі мәтін бар. Растау
батырмасын басқан жағдайда, функция True мәнін қайтарады,
әйтпесе False қайтарылады
12. Бұл жағдайда батырманы басу арқылы askyesno () функциясы шақырылады, ол екі "Иә" және "жоқ"батырмалары бар диалогтық терезені
Бұл жағдайда батырманы басу арқылы askyesno ()функциясы шақырылады, ол екі "Иә" және
"жоқ"батырмалары бар диалогтық терезені
көрсетеді. Пайдаланушы қандай батырманы
басатынына байланысты функция True немесе False
қайтарады. Функцияның нәтижесін алғаннан кейін
біз оны тексеріп, сол немесе басқа әрекеттерді
орындай аламыз
• from tkinter import *
• from tkinter import ttk
• from tkinter.messagebox import showinfo, askyesno
• root = Tk()
• root.title("METANIT.COM")
• root.geometry("250x200")
• def click():
result = askyesno(title="Подтвержение операции",
message="Подтвердить операцию?")
if result: showinfo("Результат", "Операция
подтверждена")
else: showinfo("Результат", "Операция отменена")
• ttk.Button(text="Click",
command=click).pack(anchor="center", expand=1)
• root.mainloop()
13. Ask question функциясы
Бұл әрекетті растау немесе болдырмауүшін екі батырманы көрсетеді
("Иә"(Иә) және "Жоқ"(жоқ)), бірақ
басылған батырмаға байланысты
жолды қайтарады: "иә" немесе "жоқ
Шаблоны презентаций с сайта presentation-creation.ru
14.
from from tkinter import *tkinter import ttk
from tkinter.messagebox import OK, INFO, showinfo
root = Tk()
root.title("METANIT.COM")
root.geometry("250x200")
def click():
showinfo(title="METANIT.COM", message="Добро пожаловать на сайт
METANIT.COM",
detail="Hello World!", icon=INFO, default=OK)
ttk.Button(text="Click", command=click).pack(anchor="center", expand=1)
root.mainloop()
Түймені басқан кезде келесі терезе көрсетіледі
15. Сондай-ақ, askyesnocancel () функциясы бөлек-ол үш батырманы көрсетеді: Иә (true қайтарады), жоқ (жалған қайтарады)және Канцель
(None қайтарады):from tkinter import *
from tkinter import ttk
from tkinter.messagebox import showinfo, askyesnocancel
Бұл жағдайда диалогтық терезе үш баламаны
таңдауға мүмкіндік береді
root = Tk()
root.title("METANIT.COM")
root.geometry("250x200")
def click():
result = askyesnocancel(title="Подтвержение операции", message="Подтвердить операцию?")
if result==None: showinfo("Результат", "Операция приостановлена")
elif result: showinfo("Результат", "Операция подтверждена")
else : showinfo("Результат", "Операция отменена")
ttk.Button(text="Click", command=click).pack(anchor="center", expand=1)
root.mainloop()
16. Сонымен қатар, жоғарыда қарастырылған барлық функциялар терезелерді теңшеу үшін қолдануға болатын бірқатар параметрлерді
Терезелерді орнатуСонымен қатар, жоғарыда қарастырылған барлық функциялар терезелерді
теңшеу үшін қолдануға болатын бірқатар параметрлерді қабылдайды. Олардың
кейбіреулері:
detail: кәдімгі кескіннің астында пайда болатын қосымша мәтін
icon: біріктірумен қуанышпен көрінетін белгіше. Қосымша ақпарат: info, error,
question или warning
default: әдепкі түйме. Келесі мәндердің бірін көрсету керек: abort, retry, ignore, ok,
cancel, no, yes
17. * askopenfilename (): файлды таңдау үшін диалогтық терезені ашады және таңдалған файлға жолды қайтарады. Егер файл таңдалмаса,
filedialog модулі әртүрлі есептер үшін файлды немесе каталогтытаңдауға мүмкіндік беретін файл диалогтық терезелерінің
функционалдығын қамтамасыз етеді. Атап айтқанда файлдармен
жұмыс істеу үшін модульде келесі функциялар анықталған
* askopenfilename (): файлды таңдау үшін диалогтық терезені ашады және таңдалған файлға жолды
қайтарады. Егер файл таңдалмаса, бос ""жолы қайтарылады
* askopenfilenames (): файлдарды таңдау үшін диалогтық терезені ашады және таңдалған файлдарға жолдар
тізімін қайтарады. Егер файл таңдалмаса, бос ""жолы қайтарылады
* asksaveasfilename (): файлды сақтау үшін диалогтық терезені ашады және сақталған файлға жолды
қайтарады. Егер файл таңдалмаса, бос ""жолы қайтарылады
* asksaveasfile (): файлды сақтау үшін диалогтық терезені ашады және сақталған файлды қайтарады. Егер
файл таңдалмаса, None қайтарылады
* askdirectory (): каталогты таңдау үшін диалогтық терезені ашады және таңдалған каталогқа жолды
қайтарады. Егер файл таңдалмаса, бос ""жолы қайтарылады
* askopenfile (): файлды таңдау үшін диалогтық терезені ашады және Таңдалған файлды қайтарады. Егер
файл таңдалмаса, None қайтарылады
* askopenfiles (): файлдарды таңдау үшін диалогтық терезені ашады және таңдалған файлдардың тізімін
қайтарады
18.
СПАСИБОLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua.
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip
ex ea commodo consequat.