Python3 Tkinter

opengraph-icon-200x200[1]
tkinter python tarafından desteklenen bir GUI yapma sistemi, butonlar labeller vb formları “kod” la oluşturabiliyorsunuz. bu açıdan bakıldığında pyqt,gtk gibi gelişmiş GUI araçlarından geri kalmış görünüyor.
(daha geniş bilgi için http://www.istihza.com/beta/tk3/temel_bilgiler.html)
şimdi gelelim konumuza, bir proje için basit bir arayüz yapmam gerekti, tabi alışkanlıklar kolay terkedilemiyor. Bir döngü içerisinde Label ler oluşturmak bir buton eklemek vb işler için küçük bir örnek hazırladım.
 
Bu basit Örnekte bir çok çalışmayı beraber göreceksiniz

  1. bir fonksiyona kontrolü parametre geçmek
  2. Döngü içerisinde widget oluşturmak.
  3. Widget Array Oluşturmak ve daha sonradan erişerek özelliklerini değiştirmek
  4. buton yada label a img koymak
  5. msgbox oluşturmak.
  6. Frame oluşturmak ve oluşturulan bu frame e widget eklemek.

emeğe saygı 🙂 (bugün yıllardır takip ettiğim bir forum sayfasında sağolsun arkadaşın biri yazdı, öğrenememişim şuana kadar.)
 
 

# -*- coding: utf-8 -*-
"""
Created on Sat Jun  4 12:21:57 2016
@author: muhittinkaplan
"""
from tkinter import *
from tkinter import messagebox
MyLabels=[]
top = Tk()
index=0
myFrame=Frame(top,bg="yellow",relief="solid",borderwidth=3)
#myFrame.place(relx=0,rely=0,height=500,width=500)
myFrame.pack()
img = PhotoImage(file="btn1.gif")
for c in range (5):
    for r in range (8):
        index +=1
        MyLabels.append(Label(myFrame,text=str(r)+" " +str(c)+" Label",borderwidth=1,relief="solid",padx=5,pady=5,font="arial 16"))
        MyLabels[index-1].grid(row=r,column=c,padx=1,pady=1)
myButton=Button(myFrame,text="Press",bg="blue",fg="white",command= lambda: MsgBox("Mesaj "+ str(10),MyLabels[1]),image=img,compound="left")
myButton.grid(row=11,column=11)
label = Label(myFrame,image = img)
label.grid(row = 12, column = 12)
def MsgBox(msg,control):
    messagebox._show("Başlık",msg)
    messagebox._show("Başlık",control["text"])
top.mainloop()

 
 

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google fotoğrafı

Google hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d blogcu bunu beğendi: