Grafik Kullanıcı Arayüzü SSS
****************************


Genel GKA Soruları
==================


Python için hangi GKA araç setleri var?
=======================================

Python'un standart yapıları, tkinter adlı Tcl/Tk pencere öğesi
kümesine yönelik nesne yönelimli bir arayüz içerir. Bu muhtemelen
kurulumu ve kullanımı en kolay olanıdır (çünkü çoğu Python'ın ikili
dağıtımlar kısmında bulunur) ve kullanılandır. Kaynak işaretçiler de
dahil olmak üzere Tk hakkında daha fazla bilgi için Tcl/Tk ana
sayfasına bakın. Tcl/Tk, macOS, Windows ve Unix platformlarına tamamen
taşınabilir.

Hangi platformları hedeflediğinize bağlı olarak, birkaç alternatif de
mevcuttur. Bir cross-platform listesi ve spesifik platform GKA
çerçeveleri Python Wiki'de bulunabilir.


Tkinter soruları
================


Tkinter uygulamalarını nasıl dondurabilirim?
--------------------------------------------

Dondurma işlemi, tek başına bağımsız uygulamalar oluşturmak için bir
araçtır. Tkinter uygulamalarını dondururken, uygulama hala Tcl ve Tk
kütüphanelerine ihtiyaç duyacağından, uygulamalar gerçekten bağımsız
olmayacaktır.

One solution is to ship the application with the Tcl and Tk libraries,
and point to them at run-time using the "TCL_LIBRARY" and "TK_LIBRARY"
environment variables.

Gerçekten bağımsız uygulamalar elde etmek için kütüphaneyi oluşturan
Tcl betiklerinin de uygulamaya entegre edilmesi gerekir. Bunu
destekleyen araçlardan biri, Tix dağıtımının
(http://tix.sourceforge.net/) 'in bir parçası olan SAM'dir (bağımsız
modüller).

Build Tix with SAM enabled, perform the appropriate call to
"Tclsam_init()", etc. inside Python's "Modules/tkappinit.c", and link
with libtclsam and libtksam (you might include the Tix libraries as
well).


G/Ç'yi beklerken Tk olaylarını işleyebilir miyim?
-------------------------------------------------

On platforms other than Windows, yes, and you don't even need threads!
But you'll have to restructure your I/O code a bit.  Tk has the
equivalent of Xt's "XtAddInput()" call, which allows you to register a
callback function which will be called from the Tk mainloop when I/O
is possible on a file descriptor.  See File Handlers.


Tkinter'da çalışmak için anahtar bağlamalarını alamıyorum: neden?
-----------------------------------------------------------------

An often-heard complaint is that event handlers bound to events with
the "bind()" method don't get handled even when the appropriate key is
pressed.

En yaygın neden, bağlamanın uygulandığı pencere öğesinin "klavye
odağına" sahip olmamasıdır. Focus komutu için Tk dokümantasyonuna
bakın. Genellikle Wigdet'lara tıklanılarak klavye odağı verilir (ancak
etiketler için değil; odak alma seçeneğine bakın).
