{"id":455,"date":"2023-09-07T15:25:28","date_gmt":"2023-09-07T12:25:28","guid":{"rendered":"https:\/\/www.facadium.com.tr\/blog\/?p=455"},"modified":"2023-09-07T15:25:32","modified_gmt":"2023-09-07T12:25:32","slug":"tkinter-giris","status":"publish","type":"post","link":"https:\/\/www.facadium.com.tr\/blog\/tkinter-giris\/","title":{"rendered":"Tkinter Giri\u015f"},"content":{"rendered":"\n<p>Masa\u00fcst\u00fc uygulama geli\u015ftirirken kullanabilece\u011fimiz birka\u00e7 farkl\u0131 se\u00e7ene\u011fimiz vard\u0131r. Bunlar:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>PyGTK<\/li>\n\n\n\n<li>PyQt<\/li>\n\n\n\n<li>Tkinter<\/li>\n\n\n\n<li>wxPython<\/li>\n<\/ul>\n\n\n\n<p>Python, \u00e7ok farkl\u0131 uygulamalar\u0131 geli\u015ftirebilece\u011fimiz, g\u00fc\u00e7l\u00fc bir yap\u0131ya sahip programlama dilidir. Mobil uygulamalardan, server sistemlerine, internet sitelerinin uygulamalar\u0131ndan masa\u00fcst\u00fc yaz\u0131l\u0131mlara kadar bir\u00e7ok uygulamay\u0131 olu\u015fturman\u0131za imkan tan\u0131maktad\u0131r. A\u00e7\u0131k kaynak kodlu ve \u00fccretsiz \u015fekilde da\u011f\u0131t\u0131lmas\u0131 nedeniyle \u00e7ok fazla eklentiler yap\u0131lm\u0131\u015f ve k\u00fct\u00fcphaneler \u00fcretilmi\u015ftir. G\u00fc\u00e7l\u00fc yap\u0131s\u0131na ra\u011fmen \u00e7ok basit bir dil yap\u0131s\u0131na sahip olan Python, yaz\u0131l\u0131m \u00f6\u011frenmeye ba\u015flayanlar i\u00e7in \u00e7ok tercih edilmektedir.<\/p>\n\n\n\n<p>Bu yaz\u0131 Tkinter ile neler yap\u0131laca\u011f\u0131na dair bir giri\u015f makalesidir. \u0130lerleyen g\u00fcnlerde detayl\u0131 olarak bu konu daha detayl\u0131 ele al\u0131nacakt\u0131r. Tkinter yaz\u0131 dizisi serisinde sizlere Tkinter kullanarak nas\u0131l Grafiksel Kullan\u0131c\u0131 Aray\u00fczleri (GUI) olu\u015fturabilece\u011finizi a\u00e7\u0131klayaca\u011f\u0131z. <\/p>\n\n\n\n<p><strong>Tkinter Nedir?<\/strong><\/p>\n\n\n\n<p>Tkinter, Python&#8217;\u0131n resmi k\u00fct\u00fcphanelerinden birisidir. Tkinter ile bir\u00e7ok farkl\u0131 i\u015fletim sisteminde sorunsuz \u00e7al\u0131\u015fabilen uygulamalar geli\u015ftirebilirsiniz. Tkinter ile pencere, d\u00fc\u011fme, etiket vb. aray\u00fcz \u00f6\u011felerini \u00e7ok h\u0131zl\u0131 olu\u015fturabilirsiniz. <\/p>\n\n\n\n<p><strong>Tkinter Kullanmaya Ba\u015flamak<\/strong><\/p>\n\n\n\n<p>Tkinter kullanmaya ba\u015flamak i\u00e7in ilk \u00f6ncelikle i\u00e7eri aktarman\u0131z gerekmektedir. Bunun i\u00e7in \u015funu yap\u0131yoruz:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import tkinter as tk\r<\/code><\/pre>\n\n\n\n<p>Daha sonra bir pencere olu\u015fturuyoruz.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>root = tk.Tk()<\/code><\/pre>\n\n\n\n<p>\u015eimdi de bu pencerenin ba\u015fl\u0131\u011f\u0131n\u0131 ve boyutlar\u0131n\u0131 olu\u015ftural\u0131m<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>root.title(\"\u0130lk Tkinter Uygulamam\")\r\nroot.geometry(\"400x300\")<\/code><\/pre>\n\n\n\n<p><strong>Etiket (Label) olu\u015fturmak<\/strong><\/p>\n\n\n\n<p>Penceremizde bir etiket (Label) olu\u015fturmak istiyorsak e\u011fer yapmam\u0131z gereken<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>label = tk.Label(root, text=\"Merhaba, Tkinter!\")\r\nlabel.pack() # Etiketi ana pencereye ekler\r<\/code><\/pre>\n\n\n\n<p><strong>D\u00fc\u011fme (Button) Olu\u015fturmak<\/strong><\/p>\n\n\n\n<p>Penceremize bir d\u00fc\u011fme (Button) eklemek i\u00e7in yapmam\u0131z gereken<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>button = tk.Button(root, text=\"T\u0131klama D\u00fc\u011fmesi\")\r\nbutton.pack() # D\u00fc\u011fmeyi ana pencereye ekler\r<\/code><\/pre>\n\n\n\n<p><strong>Giri\u015f Kutusu (Entry) Olu\u015fturmak<\/strong><\/p>\n\n\n\n<p>Kullan\u0131clar\u0131n yaz\u0131 girmesini istiyorsak e\u011fer bunun i\u00e7in yapmam\u0131z gereken<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>entry = tk.Entry(root)\r\nentry.pack() # Giri\u015f kutusunu ana pencereye ekler\r<\/code><\/pre>\n\n\n\n<p><strong>Liste Kutusu (Listbox) Olu\u015fturmak<\/strong><\/p>\n\n\n\n<p>Kullan\u0131c\u0131n\u0131n bir listeden veya se\u00e7enekleri g\u00f6r\u00fcnt\u00fclemesi i\u00e7in yapmam\u0131z gereken<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>listbox = tk.Listbox(root)\r\nlistbox.pack() # Liste kutusunu ana pencereye ekler\r<\/code><\/pre>\n\n\n\n<p><strong>Olaylar (Events) Olu\u015fturmak<\/strong><\/p>\n\n\n\n<p>Tkinter ile kullan\u0131c\u0131 etkile\u015fimli olaylar geli\u015ftirmek i\u00e7in yapmam\u0131z gerekenler<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>def tiklandi():\r\n    label.config(text=\"D\u00fc\u011fmeye t\u0131kland\u0131!\")\r\n\r\nbutton = tk.Button(root, text=\"T\u0131kla\", command=tiklandi)\r\nbutton.pack()\r<\/code><\/pre>\n\n\n\n<p><strong>Etiket Rengi<\/strong> (<strong>fg<\/strong>)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#!\/usr\/bin\/env python\n#-*-coding:utf-8-*-\n\nfrom tkinter import *\n\npencere = Tk()\npencere.title(\"Hata..!\")\n\netiket = Label(text = \"Hard Disk Silinecek..!\", fg=\"red\")\netiket.pack()\n\nmainloop()<\/code><\/pre>\n\n\n\n<p><strong>Arkaplan Rengi<\/strong> (<strong>bg<\/strong>)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#!\/usr\/bin\/env python\n#-*-coding:utf-8-*-\n\nfrom tkinter import *\n\npencere = Tk()\npencere.title(\"Hata..!\")\n\netiket = Label(text = \"Hard Disk Silinecek..!\", bg=\"red\")\netiket.pack()\n\nmainloop()<\/code><\/pre>\n\n\n\n<p><strong>Ayn\u0131 Anda fg ve bg Kullan\u0131m\u0131<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#!\/usr\/bin\/env python\n#-*-coding:utf-8-*-\n\nfrom tkinter import *\n\npencere = Tk()\npencere.title(\"Hata..!\")\n\netiket = Label(\n\ntext = \"Hard Disk Silinecek..!\", \n\nfg=\"black\",\nbg=\"red\")\n\netiket.pack()\n\nmainloop()<\/code><\/pre>\n\n\n\n<p><strong>Yaz\u0131 Rengi<\/strong><\/p>\n\n\n\n<p>font = &#8220;Helvetica 14 bold&#8221;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#!\/usr\/bin\/env python\n#-*-coding:utf-8-*-\n\nfrom tkinter import *\n\npencere = Tk()\npencere.title(\"Hata..!\")\n\netiket = Label(text = \"Hard Disk Silinecek..!\", fg=\"red\", font=\"Times 15 underline\")\netiket.pack()\n\nmainloop()<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>from tkinter import *\nfrom tkinter import font\n\npencere = Tk()\n\nyazitipleri = list(font.families())\nyazitipleri.sort\n\nfor fontlar in yazitipleri:\n    print(fontlar)<\/code><\/pre>\n\n\n\n<p>Bu yaz\u0131m\u0131zda Python&#8217;\u0131n Tkinter k\u00fct\u00fcphanesine giri\u015f yapm\u0131\u015f olduk. \u0130lerleyen g\u00fcnlerde Tkniter k\u00fct\u00fcphanesi ile daha fazla i\u00e7erik payla\u015fm\u0131\u015f olaca\u011f\u0131z. Bu sayede Tkinter k\u00fct\u00fcphanesini daha detayl\u0131 \u00f6\u011frenmi\u015f olaca\u011f\u0131z. Yeni payla\u015f\u0131mlar\u0131m\u0131zdan haberdar olmak i\u00e7in bizleri sosyal medyadan takip edebilirsiniz. Te\u015fekk\u00fcrler.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Masa\u00fcst\u00fc uygulama geli\u015ftirirken kullanabilece\u011fimiz birka\u00e7 farkl\u0131 se\u00e7ene\u011fimiz vard\u0131r. Bunlar: Python, \u00e7ok farkl\u0131 uygulamalar\u0131 geli\u015ftirebilece\u011fimiz, g\u00fc\u00e7l\u00fc bir yap\u0131ya sahip programlama dilidir. Mobil uygulamalardan, server sistemlerine, internet [&#8230;]<\/p>\n","protected":false},"author":3,"featured_media":456,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,57],"tags":[11,58,8,53,9],"class_list":["post-455","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-python","category-tkinter","tag-bilisim","tag-gui","tag-python","tag-tkinter","tag-yazilim"],"_links":{"self":[{"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/posts\/455","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/comments?post=455"}],"version-history":[{"count":1,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/posts\/455\/revisions"}],"predecessor-version":[{"id":457,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/posts\/455\/revisions\/457"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/media\/456"}],"wp:attachment":[{"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/media?parent=455"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/categories?post=455"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/tags?post=455"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}