ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с графичСским интСрфСйсом

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Ρ€Π΅Ρ… строчСк ΠΊΠΎΠ΄Π° Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Python ΡƒΠ΄Π°Π»ΠΎΡΡŒ вывСсти Π½Π° ΡΠΊΡ€Π°Π½ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ, Ρ€Π°ΡΡ‚ΡΠ½ΡƒΡ‚ΡŒ ΠΈΠ»ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ. Π‘Π»Π΅Π²Π° Π½Π° Ρ€ΠΈΡ. 4.46 ΠΏΠΎΠΊΠ°Π·Π°Π½ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ консольной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, справа — ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с Π³Ρ€Π°Ρ„ичСским интСрфСйсом. Text — ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ для задания ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ тСкста label = tkinter. Label (window, text = «Π­Ρ‚ΠΎ тСкст Π² ΠΎΠΊΠ½Π΅!»). Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ отобраТаСтся… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с графичСским интСрфСйсом (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ tkinter

Π―Π·Ρ‹ΠΊ Python позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния с Π³Ρ€Π°Ρ„ичСским интСрфСйсом, для этого ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ графичСскиС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ1. ΠžΡΡ‚Π°Π½ΠΎΠ²ΠΈΠΌΡΡ Π½Π° Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΠΈ стандартной графичСской Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ tkinter[1][2] (Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ поставку Python, Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΡƒΡŽ с ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ сайта python.org).

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с tkinter Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π³Π»Π°Π²Π½ΠΎΠ΅ (ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ΅) ΠΎΠΊΠ½ΠΎ (рис. 4.44), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ графичСскиС элСмСнты — Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Ρ‹. БущСствуСт большой Π½Π°Π±ΠΎΡ€ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ΠΎΠ²[3] Π½Π° Π²ΡΠ΅ случаи ΠΆΠΈΠ·Π½ΠΈ: для Π²Π²ΠΎΠ΄Π° тСкста, Π²Ρ‹Π²ΠΎΠ΄Π° тСкста, Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ мСню ΠΈ Ρ‚. Π΄. Π‘Ρ€Π΅Π΄ΠΈ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ΠΎΠ² Π΅ΡΡ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΠ°, ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ происходит Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ событиС. НСкоторыС Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Ρ‹ (Ρ„Ρ€Π΅ΠΉΠΌΡ‹) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ΠΎΠ² Π²Π½ΡƒΡ‚Ρ€ΠΈ сСбя.

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для отобраТСния Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°:

Π‘Ρ…Π΅ΠΌΠ° Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π² tkinter.

Рис. 4.44. Π‘Ρ…Π΅ΠΌΠ° Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π² tkinter

# mytkl.py.

# ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, содСрТащий ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹.

# с Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ import tkinter.

# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π³Π»Π°Π²Π½ΠΎΠ΅ (ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ΅) ΠΎΠΊΠ½ΠΎ,.

# Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ window записываСм ссылку Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

# класса Вк.

window = tkinter. Π’ΠΊ ().

# Π—Π°Π΄Π°Π΅ΠΌ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ событий для ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° window. mainloop ().

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° Ρ€ΠΈΡ. 4.45.

Π“Π»Π°Π²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ.

Рис. 4.45. Π“Π»Π°Π²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Ρ€Π΅Ρ… строчСк ΠΊΠΎΠ΄Π° Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Python ΡƒΠ΄Π°Π»ΠΎΡΡŒ вывСсти Π½Π° ΡΠΊΡ€Π°Π½ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ, Ρ€Π°ΡΡ‚ΡΠ½ΡƒΡ‚ΡŒ ΠΈΠ»ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ.

ГрафичСскиС (ΠΎΠΊΠΎΠ½Π½Ρ‹Π΅) прилоТСния ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹Ρ… (Π±Π΅Π· ΠΎΠΊΠΎΠ½Π½Ρ‹Ρ…) Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ΠΌ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ событий. Для ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹Ρ… (скорСС, ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ…) ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Ρ€Π°Π½Π΅Π΅, Π½Π΅ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΌΡ‹ΡˆΠΈ ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π°ΠΆΠ°Π» ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ ΠΎΠΊΠΎΠ½Π½Ρ‹Ρ… прилоТСниях Π²Π°ΠΆΠ½Ρ‹ всС манипуляции с ΠΌΡ‹ΡˆΡŒΡŽ ΠΈ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€ΠΎΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΡ‚ ΡΡ‚ΠΎΠ³ΠΎ зависит, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°ΠΊΠΎΠΉ ΠΏΡƒΠ½ΠΊΡ‚ мСню Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ.

Π‘Π»Π΅Π²Π° Π½Π° Ρ€ΠΈΡ. 4.46 ΠΏΠΎΠΊΠ°Π·Π°Π½ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ консольной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, справа — ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с Π³Ρ€Π°Ρ„ичСским интСрфСйсом.

Π‘Ρ…Π΅ΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ консольной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с графичСским интСрфСйсом.

Рис. 4.46. Π‘Ρ…Π΅ΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ консольной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с Π³Ρ€Π°Ρ„ичСским интСрфСйсом.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ дСмонстрируСт созданиС Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Π° Label:

# mytk2. py import tkinter window = tkinter. Tk ().

# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ класса Label Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ ΠΎΠΊΠ½Π΅ window.

# text — ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ для задания ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ тСкста label = tkinter. Label (window, text = «Π­Ρ‚ΠΎ тСкст Π² ΠΎΠΊΠ½Π΅!»).

# ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° pack label. pack ().

window.mainloop ().

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ отобраТаСтся графичСскоС ΠΎΠΊΠ½ΠΎ с Ρ‚Скстом Π²Π½ΡƒΡ‚Ρ€ΠΈ (рис. 4.47).

ВСкст Π² ΠΎΠΊΠ½Π΅.

Рис. 4.47. ВСкст Π² ΠΎΠΊΠ½Π΅.

Π”Π°Π»Π΅Π΅ прСдставлСн ΠΏΡ€ΠΈΠΌΠ΅Ρ€ размСщСния Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ΠΎΠ² Π²ΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ΅:

# mytk3. py import tkinter window = tkinter. Tk ().

# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Ρ„Ρ€Π΅ΠΉΠΌ Π² Π³Π»Π°Π²Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅ frame = tkinter. Frame (window) frame. pack ().

# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Ρ‹ ΠΈ ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅ΠΌ ΠΈΡ… Π²ΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ΅ frame first = tkinter. Label (frame, text='First label').

# ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° pack first. pack ().

second = tkinter. Label (frame, text='Second label') second. pack ().

third = tkinter. Label (frame, text='Third label') third. pack () window. mainloop ().

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° Ρ€ΠΈΡ. 4.48.

Π Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ΠΎΠ² Π²ΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ΅.

Рис. 4.48. Π Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ΠΎΠ² Π²ΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ΅

МоТно ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ„Ρ€Π΅ΠΉΠΌΠ° Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ создания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°[4]:

# mytk4. py import tkinter window = tkinter. Tk ().

frame = tkinter. Frame (window) frame. pack ().

# МоТСм ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ„Ρ€Π΅ΠΉΠΌΠ°:

frame2 = tkinter. Frame (window, borderwidth=4, relief=tkinter.GROOVE) frame2. pack ().

# Π Π°Π·ΠΌΠ΅Ρ‰Π°Π΅ΠΌ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ Ρ„Ρ€Π΅ΠΉΠΌΠ΅ (frame) first = tkinter. Label (frame, text='First label') first. pack ().

# Π Π°Π·ΠΌΠ΅Ρ‰Π°Π΅ΠΌ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Ρ‹ Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ Ρ„Ρ€Π΅ΠΉΠΌΠ΅ (frame2) second = tkinter. Label (frame2, text='Second label') second. pack ().

third = tkinter. Label (frame2, text='Third label') third. pack () window. mainloop ().

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° Ρ€ΠΈΡ. 4.49.

ИзмСнСниС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Ρ„Ρ€Π΅ΠΉΠΌΠ° ΠΏΡ€ΠΈ создании ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Рис. 4.49. ИзмСнСниС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Ρ„Ρ€Π΅ΠΉΠΌΠ° ΠΏΡ€ΠΈ создании ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ для отобраТСния Π² Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Π΅ Label содСрТимого ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ пСрСмСнная data класса StringVar (ΠΈΠ· ΠΌΠΎΠ΄ΡƒΠ»Ρ tkinter). Π’ Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅ΠΌ ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² станСт понятнСС, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π² tkinter ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ собствСнного класса[5].

# mytk5. py import tkinter window = tkinter. Tk{).

# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса StringVar.

# (создаСм ΡΡ‚Ρ€ΠΎΠΊΠΎΠ²ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡƒΠΌΠ΅Π΅Ρ‚.

# Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ tkinter):

data = tkinter. StringVar ().

# ΠœΠ΅Ρ‚ΠΎΠ΄ set позволяСт ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ содСрТимоС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ: data. set{'Π”Π°Π½Π½Ρ‹Π΅ Π² ΠΎΠΊΠ½Π΅').

# связываСм тСкст для Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Π° Label с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ data label = tkinter. Label (window, textvariable = data) label. pack ().

window.mainloop ().

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° Ρ€ΠΈΡ. 4.50.

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΠΎΠΊΠ½Π΅.

Рис. 4.50. ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΠΎΠΊΠ½Π΅.

  • [1] ' ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ см.: https://wiki.python.org/moin/GuiProgramming.
  • [2] ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ см.: https://docs.python.Org/3/library/tkinter.html.
  • [3] ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ см.: http://effbot.org/tkinterbook/tkinter-index.htm.
  • [4] ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ см.: http://effbot.org/tkinterbook/frame.htm.
  • [5] Tkinter ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ классов: Boolean Var, DoubleVar, IntVar, StringVar.
ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ