wxPython - ชั้นเรียนหลัก

wxWidgets ดั้งเดิม (เขียนด้วยภาษา C ++) เป็นไลบรารีคลาสขนาดใหญ่ คลาส GUI จากไลบรารีนี้ถูกพอร์ตไปยัง Python ด้วยโมดูล wxPython ซึ่งพยายามสะท้อนไลบรารี wxWidgets ดั้งเดิมให้ใกล้เคียงที่สุด ดังนั้นคลาส wx.Frame ใน wxPython จะทำหน้าที่ในลักษณะเดียวกับคลาส wxFrame ในเวอร์ชัน C ++

wxObject เป็นฐานสำหรับคลาสส่วนใหญ่ ออบเจ็กต์ของ wxApp (wx.App ใน wxPython) แทนตัวแอปพลิเคชัน หลังจากสร้าง GUI แล้วแอปพลิเคชันจะเข้าสู่ลูปเหตุการณ์โดยวิธี MainLoop () แผนภาพต่อไปนี้แสดงถึงลำดับชั้นของคลาส GUI ที่ใช้บ่อยที่สุดที่รวมอยู่ใน wxPython

SN ชั้นเรียนและคำอธิบาย
1 wx.Frame

wx.Frame Class มีตัวสร้างเริ่มต้นที่ไม่มีอาร์กิวเมนต์

2 wx. แผง

wx.Panel class มักจะใส่ไว้ในออบเจ็กต์ wxFrame คลาสนี้ยังสืบทอดมาจากคลาส wxWindow

3 wx.StaticText

wx.StaticText คลาสอ็อบเจ็กต์นำเสนอคอนโทรลที่ถือข้อความแบบอ่านอย่างเดียวดังกล่าว สามารถเรียกได้ว่าเป็นการควบคุมแบบพาสซีฟเนื่องจากไม่ก่อให้เกิดเหตุการณ์ใด ๆ

4 TextCtrl

ใน wxPython อ็อบเจ็กต์ของคลาส wx.TextCtrl ทำหน้าที่นี้ เป็นตัวควบคุมที่สามารถแสดงและแก้ไขข้อความได้

5 RadioButton และ RadioBox

แต่ละปุ่มซึ่งเป็นวัตถุของคลาส wx.RadioButton จะมีป้ายข้อความถัดจากปุ่มกลม wxPython API ยังประกอบด้วยคลาส wx.RadioBox วัตถุมีเส้นขอบและป้ายกำกับให้กับกลุ่ม

6 wx.CheckBox

ช่องทำเครื่องหมายจะแสดงกล่องสี่เหลี่ยมขนาดเล็กที่มีป้ายกำกับ เมื่อคลิกเครื่องหมายถูกจะปรากฏขึ้นภายในกรอบสี่เหลี่ยมเพื่อระบุว่าได้ทำการเลือกแล้ว

7 ComboBox & Choice Class

วัตถุ wx.ComboBox แสดงรายการของรายการที่จะเลือกจาก สามารถกำหนดค่าให้เป็นรายการแบบเลื่อนลงหรือแสดงผลถาวร wxPython API มีคลาส wx.Choice ซึ่งอ็อบเจ็กต์เป็นรายการแบบเลื่อนลงซึ่งเป็นแบบอ่านอย่างเดียวอย่างถาวร

8 Wx มาตรวัด

วัตถุคลาส Wx.Gauge แสดงแถบแนวตั้งหรือแนวนอนซึ่งจะแสดงปริมาณที่เพิ่มขึ้นแบบกราฟิก

9 wx.Slider

wxPython API มีคลาส wx.Slider มีฟังก์ชันการทำงานเช่นเดียวกับ Scrollbar Slider นำเสนอวิธีที่สะดวกในการจัดการการลากที่จับโดยตัวยึดเหตุการณ์เฉพาะของแถบเลื่อน wx.EVT_SLIDER

10 wx.MenuBar

แถบแนวนอนใต้แถบชื่อเรื่องของหน้าต่างระดับบนสุดสงวนไว้เพื่อแสดงชุดเมนู เป็นวัตถุของคลาส wx.MenuBar ใน wxPython API

11 wx แถบเครื่องมือ

หากพารามิเตอร์ style ของอ็อบเจ็กต์ wx.Toolbar ถูกตั้งค่าเป็น wx.TB_DOCKABLE จะกลายเป็น dockable นอกจากนี้ยังสามารถสร้างแถบเครื่องมือลอยได้โดยใช้คลาส AUIToolBar ของ wxPython

12 Wx.Dialog

แม้ว่าอ็อบเจ็กต์คลาส Dialog จะดูเหมือนเฟรม แต่โดยปกติจะใช้เป็นหน้าต่างป๊อปอัปที่ด้านบนของเฟรมพาเรนต์ วัตถุประสงค์ของกล่องโต้ตอบคือการรวบรวมข้อมูลบางส่วนจากผู้ใช้และส่งไปยังเฟรมหลัก

13 wx. สมุดบันทึก

วิดเจ็ต wx.Notebook นำเสนอการควบคุมแบบแท็บ อ็อบเจ็กต์ Notebook หนึ่งแท็บในเฟรมมีแท็บอย่างน้อยหนึ่งแท็บ (เรียกว่าเพจ) โดยแต่ละแท็บจะมีพาเนลที่แสดงเค้าโครงของตัวควบคุม

14 wx.SplitterWindow

ออบเจ็กต์ของคลาสนี้คือตัวจัดการเลย์เอาต์ซึ่งมีสองหน้าต่างย่อยที่สามารถเปลี่ยนแปลงขนาดได้แบบไดนามิกโดยการลากขอบเขตระหว่างพวกเขา ตัวควบคุม Splitter ให้ที่จับที่สามารถลากเพื่อปรับขนาดตัวควบคุมได้

15 HTMLWindow

ไลบรารี wxHTML มีคลาสสำหรับการแยกวิเคราะห์และแสดงเนื้อหา HTML แม้ว่านี่จะไม่ได้ตั้งใจให้เป็นเบราว์เซอร์แบบเต็ม แต่อ็อบเจ็กต์ wx.HtmlWindow เป็นโปรแกรมดู HTML ทั่วไป

16 ListBox และ ListCtrl

วิดเจ็ต wx.ListBox แสดงรายการสตริงที่เลื่อนได้ในแนวตั้ง โดยค่าเริ่มต้นรายการเดียวในรายการสามารถเลือกได้ วิดเจ็ต ListCtrl เป็นเครื่องมือแสดงและการเลือกรายการที่ปรับปรุงใหม่ สามารถแสดงรายการมากกว่าหนึ่งคอลัมน์ในมุมมองรายงานมุมมองรายการหรือมุมมองไอคอน