Tkinter چیست؟

5

معرفی (tkinter(Tk interface

 

سلام

ما آموزش پایتون را تا if پیش بردیم. مسئله ای که هست من خودم علاقمندم هر دستوری را با یک مثال شهودی پیش ببرم ولی خوب برای این کار باید تقریبا مقدمات پایتون را بلد باشید. با این حال من تصمیم گرفتم از  tkinter  که کتابخانه  واسط کاربر گرافیکی در پایتون هست استفاده کنم تا ضمن یادگیری دستورات پایه با نوشتن برنامه های تحت ویندوز هم آشنا بشیم.

یک فایل جدید باز میکنیم  و کد زیر را نوشته و اجرا میگیریم:

import tkinter
tkinter._test()

همانطور که در تصویر زیر مشاهده میکنید پنجره دارای چند برچسب و  دکمه است که یک سری اطلاعات مانند ورژن ماژول و.. میدهند  و کار خاصی انجام نمیدهند.

2

پنجره اصلی(Tk())

برای ساخت برنامه ای مطابق با نیازمندیهای خودمون  در ابتدابا کد زیر یک پنجره درست میکنیم :

from tkinter import*
root=Tk()

یا

import tkinter
root=tkinter.Tk()

 

در هر دو مورد ما یک خروجی خواهیم داشت با این تفاوت که با from tkinter import* ، ما اجازه داریم از محتویات ماژول بدون نوشتن نام،  استفاده کنیم.

در جلسات قبلی برای تعریف متغیر یک اسم به آن نسبت و مقداری را در ان قرار میدادیم x=1. در اینجا من متغیری به نام x از جنس اینتیجر دارم.

اینجا ()root=Tk  متغیری از جنس کلاس پنجره داریم. در واقع ما قسمتی از حافظه را با این کار اشغال میکنیم. نام تمام متغیرهای استفاده شده اختیاری است.

 

1

 

Widgets

Widget یا چیز،  اشیا گرافیکی هستند که میتوانند به پنجره برنامه اضافه شوند. برخی از Widgets  مهم  را بعد از معرفی در برنامه خود به کار میبریم:

Labels

از برچسب ها برای نمایش متن و عکس استفاده میکنیم:

w = Label(root, text=“Hello, sufra!”)
w.pack()

همانطور که در کد بالا مشاهده کردید برای نمایش یک متن ما باید  یک کلاس جدیدی از جنس لیبل ایجاد و در متغیر w قرار دادیم . این کلاس دارای دو آرگومان هست که اولی پنجره ای است که قراره روی آن نمایش داده شود. دومی متغیری از جنس رشته که قرار است متنی را نمایش دهد. البته آرگومانهای دیگری مثل رنگ متن و پس زمینه و… هم میگیرد.

برچسب ها مانند html  فقط به درد نمایش اطلاعات میخورند و کاربر نمیتواند با برنامه تعاملی داشته باشد. 

تا اینجا ما برچسب خودمون را ساختیم برای نمایش اون روی پنجره از متد pack استفاده میکنیم. از اونجایی که ماژول tkinter، کراس پلتفرم است، پنجره اندازه برچسب میشود. 

 

Ca 8 با geometry اندازه پنجره را به دلخواه تغییر میدهیم.

 

درباره نویسنده

مهارت ها: html,css C#, sql,python

نوشته های مرتبط

نظری بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *