Skip to content

เขียน GUI ด้วย wxPython ใน Python ตอนที่ 1 เริ่มต้น

สวัสดีผู้อ่านทุกท่านครับ บทความนี้จะพาผู้อ่านไปรู้จักกับโมดูลหนึ่ง ซึ่งเป็นโมดูลยอดนิยมในเรื่องการสร้าง GUI ใน Python แม้แต่ Guido van Rossum ยังใช้โมดูลนี้ครับ นั้นคือ โมดูล wxPython ครับ บทความนี้จะพาผู้อ่านไปเขียน GUI ด้วย wxPython ใน Python 2 และ Python 3 กันครับ

wxPython มีจุดเด่นดังนี้

  • เป็น framework สำหรับใช้พัฒนา GUI
  • รองรับทั้งระบบปฏิบัติการ Windows , Mac OS , Linux และอื่น ๆ
  • ดึงความสามารถของ wxWidgets มาใช้งานร่วมกับภาษา Python
  • สนับสนุน Python 2 และสนับสนุน Python 3 แล้ว

wxPython เป็นที่นิยมอย่างมากในโลกของ Python  เมื่อ Python 3 ออกมา ในปี ค.ศ. 2012 ทาง wxPython จึงได้เปิดตัวโครงการ Phoenix ขึ้นมา เพื่อทำให้ wxPython รองรับ Python 3 แต่โครงการก็เงียบมานาน ความจริงแล้วยังมีการพัฒนาอยู่อย่างต่อเนื่อง จนไม่กี่เดือนมานี้ ทาง wxPython ได้ออก wxPython Phoenix Snapshot Builds เวชั่น 3.0.3 ออกมา โดยตอนนี้ wxPython ในรุ่น 3.0.3 ที่กำลังอยู่ในช่วงกำลังพัฒนาได้สนับสนุน Python 3 แล้ว และคาดว่าจะออกรุ่นเสถียรที่รองรับ Python 3 ใน wxPython 3.0.3 ที่จะออกในอนาคตอันใกล้นี้ครับ

วิธีการติดตั้งโมดูล wxPython

สำหรับ Python 2 สามารถติดตั้งได้โดยโหลดไฟล์ติดตั้งจาก http://wxpython.org/download.php

สำหรับ Python 3 *

สามารถเข้าไปโหลดมาลองใช้ได้ที่ http://wxpython.org/Phoenix/snapshot-builds/
ผู้ใช้งาน Windows โหลดไฟล์ whl มาให้ตรงกับเวชั่นของ Python

ตัวอย่างเช่น ผมใช้ Python 3.4 64 bit ผมจึงโหลดไฟล์ wxPython_Phoenix-3.0.3.dev1820+49a8884-cp34-none-win_amd64.whl มาครับ แล้วเปิดคอมมาไลน์แล้วสั่งติดตั้งโดยใช้คำสั่ง :

pip install wxPython_Phoenix-3.0.3.dev1820+49a8884-cp34-none-win_amd64.whl

สำหรับผู้ใช้งาน Mac OS , Linux โหลดไฟล์ wxPython_Phoenix-3.0.3.dev.tar.gz มาแตกไฟล์แล้วสั่ง

$ sudo python setup.py install

* หมายเหตุ เป็นเวชั่นสำหรับนักพัฒนาครับ หากมีการออกเวชั่นเสถียรออกมาผมจะมาอัพเดตข้อมูลนี้อีกครั้งครับ

ตัวอย่างการสร้าง GUI ด้วย wxPython ใน Python

Hello World

import wx

app = wx.App(False)  # สร้างโปรแรมใหม่ ไม่เปลี่ยนเส้นทาง stdout/stderr ไปยัง window
frame = wx.Frame(None, wx.ID_ANY, "Hello World") # กำหนดให้ frame อยู่บนสุดของหน้าต่าง
frame.Show(True)     # แสดง frame
app.MainLoop()

ผลลัพธ์

Hello World ด้วย wxPython ใน Python

จะเห็นได้ว่า ตอนนี้สามารถเขียน GUI ด้วย wxPython ใน Python 3 ได้แล้วครับ 😀

ติดตามบทความต่อไปนะครับ
ขอบคุณครับ 😀

Published on Categories GUI, py2_py3, Python 2Tags

About wannaphong

วรรณพงษ์ ภัททิยไพบูลย์ ผู้ดูแลเว็บ wannaphong.com และผู้เขียนบทความบล็อกนี้ นักศึกษาชั้นปีที่ 1 สาขาวิทยาการคอมพิวเตอร์และสารสนเทศ คณะวิทยาศาสตร์ประยุกต์และวิศวกรรมศาสตร์ มหาวิทยาลัยขอนแก่น วิทยาเขตหนองคาย

1 thought on “เขียน GUI ด้วย wxPython ใน Python ตอนที่ 1 เริ่มต้น

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องที่ต้องการถูกทำเครื่องหมาย *