9 Ekim 2014 Perşembe

SizeGrip


SizeGrip pencerenin sağ alt köşesinde küçük bir kutu olup penceremizi yeniden boyutlandırmak için kullanılır . Ayrıca pencereye estetik bir görünümde sağlar. aslına bakarsanız SizeGrip olmasada pencerelerimizi boyutlandırabiliriz ama eğer kullandığınız programda boyutlandırılabilen ve boyutandırılamayan pencerelerimiz mevcutsa kullanıcımıza penceremizin boyutlandırılabilir olduğunu sezdirmek için sizegrip'i kullanabiliriz. Tabi ki bu pencere aracını kullanmak programcının tercihine kalmış birşeydir .

SizeGrip "ttk.Sizegrip" fonksiyonu kullanılarak oluşturulur:

ttk.Sizegrip().grid(column=999, row=999, sticky=(S,E))

veya

s_g = ttk.Sizegrip()
s_g.grid(column=999, row=999, sticky=(S,E))

şeklinde de yazılabilir.

sizegrip'i basit bir pencere içerisinde aşağıdaki gibi kullanabiliriz.

#! python3 
# -*- coding: utf-8 -*- 
 
from tkinter import *
import tkinter.ttk as ttk
 
pencere = Tk()
pencere.columnconfigure(0, weight=1)#menümüzün pencereyle
pencere.rowconfigure(0, weight=1)   #hareket etmesini sağlıyoruz
 
ttk.Sizegrip(pencere).grid(column=0, row=0, sticky=(S,E))
#Sizegrip bu şekilde tanımlanır.
 
pencere.title("Sizegrip")
pencere.geometry("300x300")
pencere.mainloop()

veya:

#! python3 
# -*- coding: utf-8 -*- 
 
from tkinter import *
import tkinter.ttk as ttk
 
pencere = Tk()
pencere.columnconfigure(0, weight=1)#menümüzün pencereyle
pencere.rowconfigure(0, weight=1)   #hareket etmesini sağlıyoruz

s_g = ttk.Sizegrip(pencere)#genel kullanım bu şekildedir.
s_g.grid(column=999, row=999, sticky=(S,E))

pencere.title("Sizegrip")
pencere.geometry("300x300")
pencere.mainloop()

bu şekilde de kodlayabilirsiniz.

2x serisi içinde şöyle düzenlememiz yeterlidir.

from Tkinter import *
import ttk as ttk

pencere = Tk()
pencere.columnconfigure(0, weight=1)
pencere.rowconfigure(0, weight=1)

s_g = ttk.Sizegrip(pencere)
s_g.grid(column=0, row=1, sticky=(S,E))

pencere.title("Sizegrip")
pencere.geometry("300x300")
pencere.mainloop()

bir önceki yazımdaki tab menü de de aşağıdaki gibi
kullanılabilir.

#! python3
# -*- coding: utf-8 -*- 

from tkinter import *
import tkinter.ttk as ttk
#3x serisinde ttk buşekilde 
#import ediliyor.
from tkinter.ttk import Notebook
#Notebook 3x serisinde
#bu şekilde içe aktarılıyor.

pencere = Tk()
pencere.columnconfigure(0, weight=1)
pencere.rowconfigure(0, weight=1)

tab_menü = ttk.Notebook()

b_farme = Frame(tab_menü, bg="light green")
i_farme = Frame(tab_menü, bg="light green")

b_ent = ttk.Entry(b_farme)
b_ent.grid(row=0, column=0, sticky="news")
b_ent.insert(0, "genel")

i_ent = ttk.Entry(i_farme)
i_ent.grid(row=0, column=0, sticky="w")
i_ent.insert(0, "özel")


tab_menü.add(b_farme, text='genel')
tab_menü.add(i_farme, text='özel')

tab_menü.grid(row=0, column=0, sticky="news")

s_g = ttk.Sizegrip(pencere)
s_g.grid(column=0, row=1, sticky=(S,E))

pencere.title("tab menü ve sizegrip kullanımı")
pencere.geometry("300x300")
pencere.mainloop()

2x serisi içinde yukarıdaki kodlar şu şekilde olabilir.

# -*- coding: cp1254 -*-
from Tkinter import *
import ttk as ttk
#2x serisinde ttk bu şekilde 
#import ediliyor.
from ttk import Notebook
#Notebook 2x serisinde
#bu şekilde içe aktarılıyor.

pencere = Tk()
pencere.columnconfigure(0, weight=1)
pencere.rowconfigure(0, weight=1)

tab_menu = ttk.Notebook()

b_farme = Frame(tab_menu, bg="light green")
i_farme = Frame(tab_menu, bg="light green")

b_ent = ttk.Entry(b_farme)
b_ent.grid(row=0, column=0, sticky="news")
b_ent.insert(0, "genel")

i_ent = ttk.Entry(i_farme)
i_ent.grid(row=0, column=0, sticky="w")
i_ent.insert(0, "özel")

tab_menu.add(b_farme, text='genel')
tab_menu.add(i_farme, text='özel')

tab_menu.grid(row=0, column=0, sticky="news")

s_g = ttk.Sizegrip(pencere)
s_g.grid(column=0, row=1, sticky=(S,E))

pencere.title(u"tab menü ve sizegrip kullanımı")
pencere.geometry("300x300")
pencere.mainloop()

Hiç yorum yok:

Yorum Gönder