Widget แบบต่างๆใน Tkinter
เราเห็นตัวอย่างของการใช้ widgets แบบต่างๆเช่น Tk
, Frame
, Button
แต่ Tk ยังมี widget อื่นๆอีกมากให้เราเลือกใช้งาน
Button ปุ่ม เรียกฟังก์ชันที่เรากำหนดเมื่อกดปุ่ม
Canvas พื้นที่สำหรับวาดกราฟ สามารถใส่ custom widget ลงไปได้ด้วย
Checkbutton เป็นปุ่มแบบ toggle ที่เปลี่ยนไปมาระหว่างค่าสองค่า (เช่น ปิด กับ เปิด) เวลาที่ใช้เมาส์คลิก
Entry สำหรับป้อนข้อมูลที่เป็นตัวอักษรหรือตัวเลข
Frame กล่องสี่เหลี่ยมว่างๆที่อาจจะมีเส้นรอบหรือพื้นหลัง ใช้ในการรวมกลุ่ม widgets หลายๆอัน
Label สำหรับใส่ข้อความดังที่เราได้เห็นไปแล้วในบทแรก
Listbox ที่สำหรับใส่ลิสต์ ในลิสต์นั้นเมื่อใช้คู่กับ widget ตัวอื่นอาจจะเอาไว้ทำ radio button หรือ checklist ให้กดเลือก
Menu เป็นส่วนของเมนูซึ่งเป็นลักษณะ dropdown หรือ popup menus
Menubutton สำหรับทำ dropdown menu
Message โชว์ข้อความ คล้ายๆ Label widget แต่สามารถใส่ข้อความที่มีความกว้างยาวตามที่กำหนดได้
Radiobutton ใช้ทำ radio buttons สำหรับระบุเลือกตัวใดตัวหนึ่ง ตามรูป
Scale ใช้ทำ slider ที่ปรับค่าได้ตั้งแต่มากสุดไปจนถึงน้อยสุด
Scrollbar ใช้สำหรับเลื่อนเมื่อเนื้อหาใน widget ใหญ่กว่าตัวหน้าต่าง สามารถนำไปติดบน canvas, entry, listbox, and text widgets ได้
Text สำหรับใส่ข้อความขนาดยาว
Toplevel ใช้ทำหน้าต่างพวก dialog box และ popup
LabelFrame คล้ายๆกับ Frame widget สามารถใส่ title และ format เส้นกรอบได้
PanedWindow เป็นกล่องที่เก็บ widgets อื่นๆไว้รวมกัน แต่จะสามารถ resize หน้าต่างได้
Spinbox คล้ายๆ Entry แต่แทนที่จะให้ผู้ใช้พิมพ์เข้าไป จะให้ผู้ใช้สามารถเลือกคำตอบจากเซ็ทของตัวเลือกได้
เราจะเห็นว่า widget ก็คือกล่องสี่เหลี่ยมที่บรรจุ ส่วนประกอบของ GUI (GUI element) โดย widget แต่ละแบบจะมีการใส่ค่าที่แตกต่างกัน เวลาที่เราจะเขียน GUI ทั้งหมดเราต้องเอา widget หลายๆอันมาประกอบกัน
แต่ถ้าอยากเข้าใจ widget แต่ละแบบให้มากขึ้นและเล่นตัวอย่างโค้ด ลองดูในลิงค์นี้ได้เลย http://effbot.org/tkinterbook/tkinter-classes.htm