**টিকেইন্টার** (ইংরেজি: *Tkinter*) হচ্ছে পাইথন প্রোগ্রামিং ভাষার ষ্ট্যাণ্ডার্ড গ্রাফিকাল ইউজার ইন্টারফেস বা গুই (GUI) টুলকিট বা ফ্রেমওয়ার্ক। টিকেইন্টার একটি ক্রস প্লাটফর্ম গ্রাফিকাল ইউজার ইন্টারফেস বিল্ডার। পাইথন ইন্টারপ্রেটারের সাথে এই টুলকিটটি বিল্ট ইন অবস্থায় থাকে। টিকেইন্টার পাইথনের ডি ফ্যাক্টো ষ্ট্যাণ্ডার্ড গুই।

ইতিহাস
------

টিকেইন্টার নামটি এসেছে টিকে ইন্টারফেস থেকে। ফ্রেডরিক লান্ঢকে টিকেইন্টারের জনক বলা হয়। টিকে গুই টুলকিটটি এসেছে সান ল্যাবস এর স্ক্রিপ্টিকস (Scriptics) থেকে।

উদাহরণ
------

টিকেইন্টার মডিউল ব্যবহার করে নিচে একটি পাইথন প্রোগ্রাম দেয়া হল

```
 import Tkinter
 import tkMessageBox
 
 main = Tkinter.Tk()
 
 def wiki():
           tkMessageBox.showinfo("Click me!", "I am an example for wikipedia readers")
 
 b = Tkinter.Button(main, text = "Click me!", command = wiki)
 b.pack()
 
 main.mainloop()

```

আউট পুট

বৈশিষ্ট্য
---------

টিকেইন্টার ছাড়াও পাইথনের আরও বেশ কিছু গুই প্রোগ্রামিং টুলকিট রয়েছে। তবে টিকেইন্টার পাইথনের সবচাইতে বেশি ব্যবহৃত টুলকিট। পাইথন ৩.০ সংস্করণ থেকে টিকেইন্টার (Tkinter) ও অন্যান্য মডিউলকে টিকেইন্টার (tkinter) প্যাকেজ দ্বারা প্রতিস্থাপন করা হয়েছে।  একটি সম্পূর্ণ টিসিএল (TCL) ইন্টারপ্রেটার পাইথন ইন্টারপ্রেটারের সাথে সংযুক্ত করা আছে। সুতরাং অন্যান্য আধুনিক টিকে বাইন্ডিংস গুলোর মত টিকেইন্টারও পাইথনের র‍্যাপার হিসেবে ইমপ্লিমেন্ট হয়ে থাকে। যেহেতু দুটো পৃথক ইন্টারপ্রেটারকে (পাইথন ও টিসিএল ইন্টারপ্রেটার) একত্রিত করা হয়েছে সেহেতু প্রত্যেক টিকেইন্টার কল, টিসিএল কমান্ডে অনুবাদিত হয়ে সম্পাদিত হতে পারে।

টিকেইন্টার ফ্রেমওয়ার্কটি অনেকগুলো মডিউল নিয়ে গঠিত। টিকে ইন্টারফেসটি একটি বাইনারি এক্সটেনশন মডিউল \_টিকেইন্টার (\_tkinter) এর সহায়তায় গঠিত। এই মডিউলটি টিকের (Tk) লো লেভেল ইন্টারফেস নিয়ে গঠিত।

পাইথন ২.৭ এবং পাইথন ৩.১ সংস্করণে টিকে ৮.৫ (Tk 8.5 version) সংস্করণের থিমড টিকে (themed Tk) বা টিটিকে (ttk) এর ফাংশনালিটিকে যুক্ত করা হয়েছে। ফলে টিকে উইডগেট গুলোকে সফটওয়্যারটি যেই প্লাটফর্মে চলছে (রান করছে) সেই প্লাটফর্মের ইন্টারফেসের সাথে মানানসই করে উপস্থাপন করা যায়। এর মাধ্যমে টিকেইন্টারের বিরুদ্ধে প্রোগ্রামারদের একটি দীর্ঘদিন পুরনো অভিযোগের সমাধান করা সম্ভব হয়েছে।

টিকে গুই ইন্টারফেস এবং টিকেইন্টার টুলকিট দুটো টুলই প্রায় সব ইউনিক্স প্লাটফর্মকে সমর্থন করে। তাছাড়াও সকল উইন্ডোজ ও ম্যাকিন্টোশ সিস্টেমও সমর্থন করে। টিকে ৮.০ সংস্করণ থেকে এর দ্বারা উন্নয়নকৃত সফটওয়্যার গুলোতে নেটিভ লুক ও ফীল পাওয়া যায়। অর্থাৎ যে প্লাটফর্মে সফটওয়্যারটি রান করছে সেই প্লাটফর্মের ইন্টারফেসের মত ইন্টারফেস পাওয়া যায়।

তথ্যসূত্র
---------

1. ↑  "Tkinter — Python interface to Tcl/Tk — Python v2.6.1 documentation"। সংগ্রহের তারিখ ২০০৯-০৩-১২।
2. ↑  "Tkinter - Pythoninfo Wiki"।
3. ↑  John W. Shipman (২০১৩-০৬-২৪)। "1. A cross-platform graphical user interface builder for Python"। Infohost.nmt.edu। ২০১৩-১০-২৮ তারিখে মূল থেকে আর্কাইভ করা। সংগ্রহের তারিখ ২০১৩-১২-২১।
4. 1 2 3 4  "What's Tkinter?"। Effbot.org। ২৪ ডিসেম্বর ২০১৩ তারিখে মূল থেকে আর্কাইভ করা। সংগ্রহের তারিখ ২০১৩-১২-২১।
5. ↑  "TkInter and Python"।
6. ↑  "Tkinter Wiki"। ৬ জানুয়ারি ২০১৪ তারিখে মূল থেকে আর্কাইভ করা। সংগ্রহের তারিখ ২০ ডিসেম্বর ২০১৩।
7. ↑  "Issue 2983: Ttk support for Tkinter - Python tracker"। Bugs.python.org। সংগ্রহের তারিখ ২০১৩-১২-২১।
8. ↑  "[projects] Revision 69051"। Svn.python.org। ২০০৯-০১-২৮। সংগ্রহের তারিখ ২০১৩-১২-২১। [*স্থায়ীভাবে অকার্যকর সংযোগ*]

বহিঃসংযোগ
---------

* Python Wiki: TkInter
* An Introduction to Tkinter ওয়েব্যাক মেশিনে আর্কাইভকৃত ২২ অক্টোবর ২০১২ তারিখে: Fredrik Lundh, 1999
* TkDocs: includes language-neutral and Python-specific information and a tutorial
* Thinking in Tkinter Stephen Ferg
* PAGE - Python Automatic GUI Generator
* Visual Tkinter : A Tkinter based GUI builder for Python.
* Rapyd-Tk  ওয়েব্যাক মেশিনে আর্কাইভকৃত ১৯ ডিসেম্বর ২০১৩ তারিখে : A graphical development environment for writing applications in Tkinter.

| * দে
* স
List of widget toolkits |
| --- |
| Low-level | 
* Macintosh Toolbox/Carbon
* Intrinsics
* Intuition
* Windows API
* Xlib
* XCB

 |
| High-level | 

|  |  |
| --- | --- |
| On AmigaOS | 
* BOOPSI
* MUI
* ReAction GUI
* Zune

 |
| On Mac OSand OS X | 
* Carbon
* Cocoa
* MacApp
* MacZoop
* PowerPlant

 |
| On Windows | 
* MFC
* OWL
* Silverlight
* SmartWin++
* VCL
* Windows Forms
* WPF
* WTL
* WinRT XAML

 |
| On Unix,under X11 | 
* Athena (Xaw)
* InterViews
* LessTif
* Motif
* OPEN LOOK

 |
| Cross-platform,by language | 

|  |  |
| --- | --- |
| CLI | 
* Gtk#
* Moonlight
* Tao

 |
| C | 
* GTK+
* Tk
* XForms
* XVT
* µGFX

 |
| Objective-C | 
* GNUstep

 |
| C++ | 
* CEGUI
* CLX
* FLTK
* FOX toolkit
* GLUI
* Juce
* Qt
* Wt
* TnFOX
* Ultimate++
* VCF
* wxWidgets
* YAAF

 |
| Flash | 
* Apache Flex

 |
| Java | 

|  |  |
| --- | --- |
| desktop | 
* AWT
* Swing
* SWT
* Qt Jambi

 |
| web | 
* গুগল ওয়েব টুলকিট

 |

 |
| JavaScript | 
* Dojo Toolkit
* Echo
* Ext JS
* Google Closure
* jQuery UI
* Qooxdoo
* YUI

 |
| Common Lisp | 
* CAPI
* Common Graphics
* CLIM
* Ltk
* McCLIM

 |
| Object Pascal | 
* CLX
* fpGUI
* IP Pascal
* Lazarus

 |
| Perl | 
* WxPerl
* Perl/Tk

 |
| PHP | 
* PHP-GTK
* PHP-Qt
* WxPHP

 |
| Python | 
* Pyjamas
* PyQt
* PyGTK
* PyGObject
* PySide
* Tkinter
* wxPython

 |
| Ruby | 
* Shoes
* QtRuby

 |
| XML | 
* Ample SDK
* CougarXML
* GladeXML
* Lively Kernel
* Pyjamas
* Rialto Toolkit
* XAML
* XUI
* XUL
* Wt

 |

 |

 |