SlideShare a Scribd company logo
1 of 24
Файтон график интерфэйс
Tkinter
Мандах Бүртгэл ДС-МТТ
Лекц - 12
Агуулга
• Tkinter гэж юу вэ?
• GUI хэрэгслүүд дээр ажиллах
• Хүрээ(frame) үүсгэх
• Товч(button) үүсгэх
• Текст оруулах, харуулах хэрэгсэл үүсгэх
• CheckButton үүсгэх
• Radio button үүсгэх
Tkinter гэж юу вэ?
• Tkinter бол файтон хэлэнд зориулсан
авсаархан график интерфэйс юм. Мөн
файтон хэлтэй адил нээлттэй эх.
• Tk == Toolkit
• Tkinter == Toolkit interface
• Tcl == Toolkit Control Language
• Tk нь мөн Perl хэлэнд ашиглагддаг.
Давуу тал
• Үечлэгдсэн бүтэцтэй - Layered
implementation
• Ашиглахад хялбар - Accessibility
• Авсаархан - Portability
• Цаашид хөгжих боломжтой - Availability
Энгийн програм
• from Tkinter import *
• root = Tk( )
• root.title("A simple application")
• root.mainloop( )
• Toolkit ашиглахын тулд Tkinter санг оруулах ёстой.
Энгийн програм
• from Tkinter import *
• #Классууд болон функцууд агуулна.
• #Хэрэглэгчийн график интерфэйс үүсгэхэд
шаардлагатай бүх зүйлийг Tkinter гэсэн
namespace –р оруулж ирдэг.
• root= Tk();
• #Үндсэн(root) нэг цонх үүсгэнэ. Үндсэн
цонхонд бусад tool үүдийг оруулж ирнэ.
• #үүнийг ямар нэг виджет үүсгэхээс өмнө
заавал үүсгэх ёстой.
Энгийн програм
• root.title(‘Title window')
• #Root эсвэл хүрээний гарчиг онооно.
• root.mainloop()
• #Файтон програмд хэрэглэгчийн интерфэйс
үүсгэхэд loop гэсэн эвент ажилладаг. Энэ нь
цонх хаагдах хүртэл үргэлжлэнэ.
Програмын гаралт
• Windows Linux
Widget-үүд
• Tkinter-ын бүрэлдэхүүн хэсгүүдийг
Widget гэж нэрлэдэг.
• Widget нь ОХП-н объект гэсэн
ойлголттой адилхан. Бүхий л widget-
үүд нь Widget гэсэн классаас
удамшдаг.
Widget-үүд
• Toplevel
• Frame
• Label
• Button
• Entry
• Radiobutton
• Checkbutton
• Menu
• Message
• Text
• Scrollbar
• Listbox
• Scale
• Canvas
Виджетүүд
Menu bar
Label
Text area (for geometry input)
Text entry
Radio buttons
Checkbox
Widget-н сонголтууд
• Widget – н сонголтууд гэдэг нь тухайн виджетийн
аттрибутууд юм. Бүх виджетүүд адилхан
аттрибуттай байдаггүй. Виджетүүд нь өөрийн
онцлогоос хамаарч өөр өөр аттрибут авдаг, жишээ
нь: ямар нэг текст авдаг виджет байвал бүгд
адилхан ‘text’ гэсэн аттрибут авна. ‘Padx’
аттрибут нь өөрөө болон өөр виджетийн
хоорондох зайг зааж өгөх гэх мэт.
Hello world
• from Tkinter import *
• root = Tk()
• w=Label(root, text="Hello, World!")
• w.pack()
• root.mainloop()
Pack() метход
• Бичигдэх хэлбэр: widget.pack( Сонголтууд )
Сонголтууд
• expand: Цонхны хэмжээг өөрчлөх боломжтой
болгох. Үнэн/худал утга авна. (0, 1)
• fill: Өгөгдсөн утгаар дүүргэлт хийнэ. NONE
(default), X (хэвтээ тэнхлэгийн дагуу дүүргэлт
хийнэ), Y (босоо тэнхлэгийн дагуу дүүргэнэ),
BOTH (босоо болон хэвтээ дүүргэлт).
Pack() метход
• side: Parent виджетийн аль хэсэгт
дүрсэлхийг заана: TOP (default), BOTTOM,
LEFT, RIGHT.
• Label() – Дэлгэцэнд label тодорхойлж өгөх
• text= Label() виджетийн аттрибут, текстийн
утга оноох
• pack() - тохирох хэмжээгээр цонх дүрслэх
• mainloop() – Тухайн програм дүрсэлсэн бүх
виджетүүдийг харуулах.
Жишээ 1
from Tkinter import *
root = Tk()
w = Label(root, text="Orange", bg="orange",
fg="white", font="arial")
w.pack()
w = Label(root, text="Green", bg="green",
fg="black", font="arial")
w.pack()
w = Label(root, text="Blue", bg="blue",
fg="white", font="arial")
w.pack()
mainloop()
Жишээ 2
from Tkinter import *
root = Tk()
w = Label(root, text="Orange", bg="orange", fg="white",
font="arial")
w.pack(fill=X)
w = Label(root, text="Green", bg="green", fg="black",
font="arial")
w.pack(fill=X)
w = Label(root, text="Blue", bg="blue", fg="white",
font="arial")
w.pack(fill=X)
mainloop()
Үр дүн
• Жишээ 2• Жишээ1
Жишээ 3
from Tkinter import *
root = Tk()
w = Label(root, text="Red", bg="red",
fg="white") w.pack(side=LEFT)
w = Label(root, text="Green",
bg="green", fg="black")
w.pack(side=LEFT)
w = Label(root, text="Blue",
bg="blue", fg="white")
w.pack(side=LEFT)
mainloop()
Жишээ
from Tkinter import *
root = Tk()
listbox = Listbox(root)
listbox.pack(fill=BOTH,
expand=1)
for i in range(20):
listbox.insert(END, str(i))
mainloop()
Жишээ
from Tkinter import *
title=‘FRAME'
root = Tk()
f=Frame(root,borderwidth=1)
f.pack(side=LEFT,padx=50,pady=50)
L=Label(root,text='frame')
L.pack(side=LEFT)
root.title(title)
root.mainloop()
Ашигласан материал
• http://www.tutorialspoint.com/python/pytho
n_gui_programming.htm
• http://effbot.org/tkinterbook/
• https://wiki.python.org/moin/TkInter
• https://docs.python.org/2/library/tk.html
• http://usingpython.com/using-tkinter/
• http://www.python-
course.eu/python_tkinter.php

More Related Content

What's hot

С.Батсайхан - Үнэт цаасны индексийг таамаглах, техникийн шинжилгээ хийх, мэ...
С.Батсайхан - Үнэт цаасны индексийг  таамаглах,  техникийн шинжилгээ хийх, мэ...С.Батсайхан - Үнэт цаасны индексийг  таамаглах,  техникийн шинжилгээ хийх, мэ...
С.Батсайхан - Үнэт цаасны индексийг таамаглах, техникийн шинжилгээ хийх, мэ...
batnasanb
 
U.cs101 алгоритм программчлал-12
U.cs101   алгоритм программчлал-12U.cs101   алгоритм программчлал-12
U.cs101 алгоритм программчлал-12
Badral Khurelbaatar
 
Lecture.12
Lecture.12Lecture.12
Lecture.12
Tj Crew
 
Лекц 1
Лекц 1Лекц 1
Лекц 1
Etugen
 
функцийн өсөх ба буурах нөхцөл
функцийн өсөх ба буурах нөхцөлфункцийн өсөх ба буурах нөхцөл
функцийн өсөх ба буурах нөхцөл
doogii2335
 
мэдээллийн системийг хөгжүүлэх
мэдээллийн системийг хөгжүүлэхмэдээллийн системийг хөгжүүлэх
мэдээллийн системийг хөгжүүлэх
Khishighuu Myanganbuu
 
тойм статистик лекц 2
тойм статистик лекц 2тойм статистик лекц 2
тойм статистик лекц 2
Serod Khuyagaa
 

What's hot (20)

Lecture 3
Lecture 3Lecture 3
Lecture 3
 
лекц №5
лекц №5лекц №5
лекц №5
 
йыбыйб
йыбыйбйыбыйб
йыбыйб
 
С.Батсайхан - Үнэт цаасны индексийг таамаглах, техникийн шинжилгээ хийх, мэ...
С.Батсайхан - Үнэт цаасны индексийг  таамаглах,  техникийн шинжилгээ хийх, мэ...С.Батсайхан - Үнэт цаасны индексийг  таамаглах,  техникийн шинжилгээ хийх, мэ...
С.Батсайхан - Үнэт цаасны индексийг таамаглах, техникийн шинжилгээ хийх, мэ...
 
Lekts 3
Lekts 3Lekts 3
Lekts 3
 
U.cs101 алгоритм программчлал-12
U.cs101   алгоритм программчлал-12U.cs101   алгоритм программчлал-12
U.cs101 алгоритм программчлал-12
 
Ood lesson11 sequence
Ood lesson11 sequenceOod lesson11 sequence
Ood lesson11 sequence
 
Mac ecs12.2021h
Mac ecs12.2021hMac ecs12.2021h
Mac ecs12.2021h
 
Lekts 5
Lekts 5Lekts 5
Lekts 5
 
Lecture.12
Lecture.12Lecture.12
Lecture.12
 
Files
FilesFiles
Files
 
U.cs101 алгоритм программчлал-3
U.cs101   алгоритм программчлал-3U.cs101   алгоритм программчлал-3
U.cs101 алгоритм программчлал-3
 
Лекц 1
Лекц 1Лекц 1
Лекц 1
 
функцийн өсөх ба буурах нөхцөл
функцийн өсөх ба буурах нөхцөлфункцийн өсөх ба буурах нөхцөл
функцийн өсөх ба буурах нөхцөл
 
Jishee bodlogo6
Jishee bodlogo6Jishee bodlogo6
Jishee bodlogo6
 
Статистикийн үндсэн аргууд түүний хэрэглээ
Статистикийн үндсэн аргууд түүний хэрэглээСтатистикийн үндсэн аргууд түүний хэрэглээ
Статистикийн үндсэн аргууд түүний хэрэглээ
 
Mac ecs11.2021h
Mac ecs11.2021hMac ecs11.2021h
Mac ecs11.2021h
 
мэдээллийн системийг хөгжүүлэх
мэдээллийн системийг хөгжүүлэхмэдээллийн системийг хөгжүүлэх
мэдээллийн системийг хөгжүүлэх
 
тойм статистик лекц 2
тойм статистик лекц 2тойм статистик лекц 2
тойм статистик лекц 2
 
визуаль програмчлал тест
визуаль програмчлал тествизуаль програмчлал тест
визуаль програмчлал тест
 

Similar to Lecture 12 tkinter (8)

Lecture 14 tkinter
Lecture 14   tkinterLecture 14   tkinter
Lecture 14 tkinter
 
Lecture 15 tkinter
Lecture 15   tkinterLecture 15   tkinter
Lecture 15 tkinter
 
Microsoft power point
Microsoft power pointMicrosoft power point
Microsoft power point
 
Microsoft power point
Microsoft power pointMicrosoft power point
Microsoft power point
 
Microsoft power point
Microsoft power pointMicrosoft power point
Microsoft power point
 
Microsoft power point
Microsoft power pointMicrosoft power point
Microsoft power point
 
Microsoft power point
Microsoft power pointMicrosoft power point
Microsoft power point
 
Vb.net mon1
Vb.net mon1Vb.net mon1
Vb.net mon1
 

More from Энхтамир Ш

Lecture 4 - Програм хангамжийн төслийн үнэлгээ
Lecture 4 - Програм хангамжийн төслийн үнэлгээLecture 4 - Програм хангамжийн төслийн үнэлгээ
Lecture 4 - Програм хангамжийн төслийн үнэлгээ
Энхтамир Ш
 

More from Энхтамир Ш (20)

Lecture 14 test strategy
Lecture 14   test strategyLecture 14   test strategy
Lecture 14 test strategy
 
ПХ-н баримтжуулалтын бодлого тогтоох
ПХ-н баримтжуулалтын бодлого тогтоохПХ-н баримтжуулалтын бодлого тогтоох
ПХ-н баримтжуулалтын бодлого тогтоох
 
Personal Software Process
Personal Software ProcessPersonal Software Process
Personal Software Process
 
Lecture 4 - Програм хангамжийн төслийн үнэлгээ
Lecture 4 - Програм хангамжийн төслийн үнэлгээLecture 4 - Програм хангамжийн төслийн үнэлгээ
Lecture 4 - Програм хангамжийн төслийн үнэлгээ
 
Multimedia
MultimediaMultimedia
Multimedia
 
Css animation
Css animationCss animation
Css animation
 
Lecture html head
Lecture   html headLecture   html head
Lecture html head
 
Монголын Их, дээд сургуулиудын техник технологийн өнөөгийн байдал, хөгжлийн ...
Монголын  Их, дээд сургуулиудын техник технологийн өнөөгийн байдал, хөгжлийн ...Монголын  Их, дээд сургуулиудын техник технологийн өнөөгийн байдал, хөгжлийн ...
Монголын Их, дээд сургуулиудын техник технологийн өнөөгийн байдал, хөгжлийн ...
 
Старт-ап, жижиг дунд байгууллага, үйлдвэрллийг дэмжих цахим систем
Старт-ап, жижиг дунд байгууллага, үйлдвэрллийг дэмжих цахим систем Старт-ап, жижиг дунд байгууллага, үйлдвэрллийг дэмжих цахим систем
Старт-ап, жижиг дунд байгууллага, үйлдвэрллийг дэмжих цахим систем
 
Оюутны хөдөлмөр эрхлэлт
Оюутны хөдөлмөр эрхлэлтОюутны хөдөлмөр эрхлэлт
Оюутны хөдөлмөр эрхлэлт
 
НББ-ийн сургалтын өнөөгийн байдлын судалгаа
НББ-ийн сургалтын өнөөгийн байдлын судалгааНББ-ийн сургалтын өнөөгийн байдлын судалгаа
НББ-ийн сургалтын өнөөгийн байдлын судалгаа
 
Хувьцааны өгөөж түүнд нөлөөлж буй хүчин зүйлсийн шинжилгээ
Хувьцааны өгөөж түүнд нөлөөлж буй хүчин зүйлсийн шинжилгээХувьцааны өгөөж түүнд нөлөөлж буй хүчин зүйлсийн шинжилгээ
Хувьцааны өгөөж түүнд нөлөөлж буй хүчин зүйлсийн шинжилгээ
 
ОЮУТНЫ СУРЛАГЫН АМЖИЛТАНД НӨЛӨӨЛӨХ ХҮЧИН ЗҮЙЛСИЙН СУДАЛГАА
ОЮУТНЫ СУРЛАГЫН АМЖИЛТАНД НӨЛӨӨЛӨХ ХҮЧИН ЗҮЙЛСИЙН СУДАЛГААОЮУТНЫ СУРЛАГЫН АМЖИЛТАНД НӨЛӨӨЛӨХ ХҮЧИН ЗҮЙЛСИЙН СУДАЛГАА
ОЮУТНЫ СУРЛАГЫН АМЖИЛТАНД НӨЛӨӨЛӨХ ХҮЧИН ЗҮЙЛСИЙН СУДАЛГАА
 
НИЙГМИЙН ХАЛАМЖИЙН САНГИЙН ЗАРЛАГАД НӨЛӨӨЛӨХ ХҮЧИН ЗҮЙЛИЙН ШИНЖИЛГЭЭ
НИЙГМИЙН ХАЛАМЖИЙН САНГИЙН ЗАРЛАГАД НӨЛӨӨЛӨХ ХҮЧИН ЗҮЙЛИЙН ШИНЖИЛГЭЭ НИЙГМИЙН ХАЛАМЖИЙН САНГИЙН ЗАРЛАГАД НӨЛӨӨЛӨХ ХҮЧИН ЗҮЙЛИЙН ШИНЖИЛГЭЭ
НИЙГМИЙН ХАЛАМЖИЙН САНГИЙН ЗАРЛАГАД НӨЛӨӨЛӨХ ХҮЧИН ЗҮЙЛИЙН ШИНЖИЛГЭЭ
 
Өнөөгийн нөхцөлд их дээд сургууль төгсөгчдийн эзлэх байр сууринд нөлөөлөх хүч...
Өнөөгийн нөхцөлд их дээд сургууль төгсөгчдийн эзлэх байр сууринд нөлөөлөх хүч...Өнөөгийн нөхцөлд их дээд сургууль төгсөгчдийн эзлэх байр сууринд нөлөөлөх хүч...
Өнөөгийн нөхцөлд их дээд сургууль төгсөгчдийн эзлэх байр сууринд нөлөөлөх хүч...
 
Англи хэл сурах дэлхий нийтийн чиг хандлага манай оронд нөлөөлж буйг судалс...
Англи хэл сурах дэлхий нийтийн чиг хандлага   манай оронд нөлөөлж буйг судалс...Англи хэл сурах дэлхий нийтийн чиг хандлага   манай оронд нөлөөлж буйг судалс...
Англи хэл сурах дэлхий нийтийн чиг хандлага манай оронд нөлөөлж буйг судалс...
 
Acc2 buyanzaya, nominzul, khaliunaa
Acc2   buyanzaya, nominzul, khaliunaaAcc2   buyanzaya, nominzul, khaliunaa
Acc2 buyanzaya, nominzul, khaliunaa
 
Turiin sanhuu l12
Turiin sanhuu l12Turiin sanhuu l12
Turiin sanhuu l12
 
Turiin sanhuu l11
Turiin sanhuu l11Turiin sanhuu l11
Turiin sanhuu l11
 
Turiin sanhuu l10
Turiin sanhuu l10Turiin sanhuu l10
Turiin sanhuu l10
 

Lecture 12 tkinter

  • 1. Файтон график интерфэйс Tkinter Мандах Бүртгэл ДС-МТТ Лекц - 12
  • 2. Агуулга • Tkinter гэж юу вэ? • GUI хэрэгслүүд дээр ажиллах • Хүрээ(frame) үүсгэх • Товч(button) үүсгэх • Текст оруулах, харуулах хэрэгсэл үүсгэх • CheckButton үүсгэх • Radio button үүсгэх
  • 3. Tkinter гэж юу вэ? • Tkinter бол файтон хэлэнд зориулсан авсаархан график интерфэйс юм. Мөн файтон хэлтэй адил нээлттэй эх. • Tk == Toolkit • Tkinter == Toolkit interface • Tcl == Toolkit Control Language • Tk нь мөн Perl хэлэнд ашиглагддаг.
  • 4. Давуу тал • Үечлэгдсэн бүтэцтэй - Layered implementation • Ашиглахад хялбар - Accessibility • Авсаархан - Portability • Цаашид хөгжих боломжтой - Availability
  • 5. Энгийн програм • from Tkinter import * • root = Tk( ) • root.title("A simple application") • root.mainloop( ) • Toolkit ашиглахын тулд Tkinter санг оруулах ёстой.
  • 6. Энгийн програм • from Tkinter import * • #Классууд болон функцууд агуулна. • #Хэрэглэгчийн график интерфэйс үүсгэхэд шаардлагатай бүх зүйлийг Tkinter гэсэн namespace –р оруулж ирдэг. • root= Tk(); • #Үндсэн(root) нэг цонх үүсгэнэ. Үндсэн цонхонд бусад tool үүдийг оруулж ирнэ. • #үүнийг ямар нэг виджет үүсгэхээс өмнө заавал үүсгэх ёстой.
  • 7. Энгийн програм • root.title(‘Title window') • #Root эсвэл хүрээний гарчиг онооно. • root.mainloop() • #Файтон програмд хэрэглэгчийн интерфэйс үүсгэхэд loop гэсэн эвент ажилладаг. Энэ нь цонх хаагдах хүртэл үргэлжлэнэ.
  • 9. Widget-үүд • Tkinter-ын бүрэлдэхүүн хэсгүүдийг Widget гэж нэрлэдэг. • Widget нь ОХП-н объект гэсэн ойлголттой адилхан. Бүхий л widget- үүд нь Widget гэсэн классаас удамшдаг.
  • 10. Widget-үүд • Toplevel • Frame • Label • Button • Entry • Radiobutton • Checkbutton • Menu • Message • Text • Scrollbar • Listbox • Scale • Canvas
  • 11. Виджетүүд Menu bar Label Text area (for geometry input) Text entry Radio buttons Checkbox
  • 12.
  • 13. Widget-н сонголтууд • Widget – н сонголтууд гэдэг нь тухайн виджетийн аттрибутууд юм. Бүх виджетүүд адилхан аттрибуттай байдаггүй. Виджетүүд нь өөрийн онцлогоос хамаарч өөр өөр аттрибут авдаг, жишээ нь: ямар нэг текст авдаг виджет байвал бүгд адилхан ‘text’ гэсэн аттрибут авна. ‘Padx’ аттрибут нь өөрөө болон өөр виджетийн хоорондох зайг зааж өгөх гэх мэт.
  • 14. Hello world • from Tkinter import * • root = Tk() • w=Label(root, text="Hello, World!") • w.pack() • root.mainloop()
  • 15. Pack() метход • Бичигдэх хэлбэр: widget.pack( Сонголтууд ) Сонголтууд • expand: Цонхны хэмжээг өөрчлөх боломжтой болгох. Үнэн/худал утга авна. (0, 1) • fill: Өгөгдсөн утгаар дүүргэлт хийнэ. NONE (default), X (хэвтээ тэнхлэгийн дагуу дүүргэлт хийнэ), Y (босоо тэнхлэгийн дагуу дүүргэнэ), BOTH (босоо болон хэвтээ дүүргэлт).
  • 16. Pack() метход • side: Parent виджетийн аль хэсэгт дүрсэлхийг заана: TOP (default), BOTTOM, LEFT, RIGHT.
  • 17. • Label() – Дэлгэцэнд label тодорхойлж өгөх • text= Label() виджетийн аттрибут, текстийн утга оноох • pack() - тохирох хэмжээгээр цонх дүрслэх • mainloop() – Тухайн програм дүрсэлсэн бүх виджетүүдийг харуулах.
  • 18. Жишээ 1 from Tkinter import * root = Tk() w = Label(root, text="Orange", bg="orange", fg="white", font="arial") w.pack() w = Label(root, text="Green", bg="green", fg="black", font="arial") w.pack() w = Label(root, text="Blue", bg="blue", fg="white", font="arial") w.pack() mainloop()
  • 19. Жишээ 2 from Tkinter import * root = Tk() w = Label(root, text="Orange", bg="orange", fg="white", font="arial") w.pack(fill=X) w = Label(root, text="Green", bg="green", fg="black", font="arial") w.pack(fill=X) w = Label(root, text="Blue", bg="blue", fg="white", font="arial") w.pack(fill=X) mainloop()
  • 20. Үр дүн • Жишээ 2• Жишээ1
  • 21. Жишээ 3 from Tkinter import * root = Tk() w = Label(root, text="Red", bg="red", fg="white") w.pack(side=LEFT) w = Label(root, text="Green", bg="green", fg="black") w.pack(side=LEFT) w = Label(root, text="Blue", bg="blue", fg="white") w.pack(side=LEFT) mainloop()
  • 22. Жишээ from Tkinter import * root = Tk() listbox = Listbox(root) listbox.pack(fill=BOTH, expand=1) for i in range(20): listbox.insert(END, str(i)) mainloop()
  • 23. Жишээ from Tkinter import * title=‘FRAME' root = Tk() f=Frame(root,borderwidth=1) f.pack(side=LEFT,padx=50,pady=50) L=Label(root,text='frame') L.pack(side=LEFT) root.title(title) root.mainloop()
  • 24. Ашигласан материал • http://www.tutorialspoint.com/python/pytho n_gui_programming.htm • http://effbot.org/tkinterbook/ • https://wiki.python.org/moin/TkInter • https://docs.python.org/2/library/tk.html • http://usingpython.com/using-tkinter/ • http://www.python- course.eu/python_tkinter.php