Rumah pembangunan bahagian belakang Tutorial Python wxpython中自定义事件的实现与使用方法分析

wxpython中自定义事件的实现与使用方法分析

May 16, 2018 pm 04:27 PM
wxpython Acara tersuai

本文实例讲述了wxpython中自定义事件的实现与使用方法。分享给大家供大家参考,具体如下:

创建自定义事件的步骤:

① 定义事件类,该事件类必须继承自wx.PyCommandEvent,并定义get和set方法来获取和设置事件参数。

② 创建一个事件类型和一个绑定器对象去绑定该事件到特定的对象。

③ 创建自定义事件对象,设置事件参数,并且使用ProcessEvent()方法将这个实例引入事件处理系统。

④ 绑定自定义事件的event handler。

⑤ 在event handler中响应事件。

示例代码:

#!/usr/bin/env python
#coding=utf-8
import wx
class MyTestEvent(wx.PyCommandEvent):  #1 定义事件
  def __init__(self, evtType, id):
    wx.PyCommandEvent.__init__(self, evtType, id)
    self.eventArgs = ""
  def GetEventArgs(self):
    return self.eventArgs
  def SetEventArgs(self, args):
    self.eventArgs = args
myEVT_MY_TEST = wx.NewEventType() #2 创建一个事件类型
EVT_MY_TEST = wx.PyEventBinder(myEVT_MY_TEST, 1) #3 创建一个绑定器对象
class MyFrame(wx.Frame):
  def __init__(self):
    wx.Frame.__init__(self, None, -1, "My Frame", size=(300, 300),pos=(300,300))
    panel = wx.Panel(self, -1)
    self.button1 = wx.Button(panel,id=-1,pos=(40, 40),label="button1")
    self.Bind(wx.EVT_BUTTON, self.OnButton1Click, self.button1)
    self.Bind(EVT_MY_TEST, self.OnHandle)# 4绑定事件处理函数
  def OnButton1Click(self,event):
    self.OnDoTest()
  def OnHandle(self,event):#8 事件处理函数
    dlg = wx.MessageDialog(self, event.GetEventArgs(),'A Message Box',wx.OK | wx.ICON_INFORMATION)
    dlg.ShowModal()
    dlg.Destroy()
  def OnDoTest(self):
    evt = MyTestEvent(myEVT_MY_TEST, self.button1.GetId()) #5 创建自定义事件对象
    evt.SetEventArgs("test event")  # 6添加数据到事件
    self.GetEventHandler().ProcessEvent(evt) #7 处理事件
if __name__ == '__main__':
  app = wx.PySimpleApp()
  frame = MyFrame()
  frame.Show(True)
  app.MainLoop()
Salin selepas log masuk

说明:

1.定义MyTestEvent 类为wx.PyCommandEvent的子类,wx.PyCommandEvent是wxPython特定的结构,可以用来创建新的事件类并且可以把C++类和你的Python代码连接起来。

2. wx.NewEventType()类似于wx.NewId();它返回一个唯一的事件类型ID。

3.创建一个绑定器对象,第二个参数的取值位于[0,2]之间,它代表wxId标识号,该标识号用于wx.EvtHandler.Bind()方法去确定哪个对象是事件的源。

4.绑定事件的处理器。

5. 创建自定义事件对象,并把触发事件的控件的ID作为参数传给MyTestEvent的构造函数。

6.添加数据给事件。可以将一些您需要的信息通过这种方法传递进去。

7. ProcessEvent()的调用将这个新事件引入到事件处理系统中,GetEventHandler()调用返回wx.EvtHandler的一个实例,也就是窗口对象本身,即:MyFrame。

8.绑定事件处理函数,这里的事件处理方式是通过MessageDialog显示出传入的事件参数。

希望本文所述对大家Python程序设计有所帮助。

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Pengaturcaraan GUI Python: Mulakan dengan cepat dan mudah buat antara muka interaktif Pengaturcaraan GUI Python: Mulakan dengan cepat dan mudah buat antara muka interaktif Feb 19, 2024 pm 01:24 PM

Pengenalan ringkas kepada GUI pengaturcaraan GUI python (Antara Muka Pengguna Grafik, antara muka pengguna grafik) ialah cara yang membolehkan pengguna berinteraksi dengan komputer secara grafik. Pengaturcaraan GUI merujuk kepada penggunaan bahasa pengaturcaraan untuk mencipta antara muka pengguna grafik. Python ialah bahasa pengaturcaraan popular yang menyediakan perpustakaan GUI yang kaya, menjadikan pengaturcaraan GUI Python sangat mudah. Pengenalan kepada perpustakaan GUI Python Terdapat banyak perpustakaan GUI dalam Python, yang paling biasa digunakan ialah: Tkinter: Tkinter ialah perpustakaan GUI yang disertakan dengan perpustakaan standard Python Ia mudah dan mudah digunakan, tetapi mempunyai fungsi yang terhad. PyQt: PyQt ialah perpustakaan GUI merentas platform dengan fungsi yang berkuasa.

Tutorial asas VUE3: Acara tersuai menggunakan Vue.js Tutorial asas VUE3: Acara tersuai menggunakan Vue.js Jun 15, 2023 pm 09:43 PM

Vue.js ialah rangka kerja JavaScript popular yang menyediakan banyak ciri mudah, jadi ia sangat berguna apabila membangunkan aplikasi web. Sistem acara tersuai dalam Vue.js menjadikannya lebih fleksibel dan membolehkan kebolehgunaan semula kod yang lebih baik melalui penembakan dan pengendalian acara komponen. Dalam artikel ini, kami akan membincangkan cara menggunakan acara tersuai dengan Vue.js. Asas acara tersuai dalam Vue.js Dalam Vue.js, kita boleh mendengar acara DOM melalui arahan v-on. Sebagai contoh,

Penjelasan terperinci tentang perpustakaan GUI wxPython dalam Python Penjelasan terperinci tentang perpustakaan GUI wxPython dalam Python Jun 09, 2023 pm 10:00 PM

Python ialah bahasa pengaturcaraan yang ringkas, mudah dipelajari dan cekap. Ia digunakan secara meluas dalam pelbagai bidang seperti sains data, kecerdasan buatan, pembangunan permainan, pengaturcaraan rangkaian, dll. Walaupun Python disertakan dengan beberapa perpustakaan GUI, fungsinya agak mudah dan tidak dapat memenuhi keperluan pelbagai aplikasi yang kompleks. Oleh itu, terdapat banyak perpustakaan GUI dalam Python untuk dipilih, antaranya wxPython adalah salah satu daripadanya, yang artikel ini akan memperkenalkan secara terperinci. Pengenalan kepada wxPython wxPython ialah sumber terbuka, perpustakaan GUI merentas platform berdasarkan

Pengaturcaraan GUI Python: Jadikan program anda menonjol Pengaturcaraan GUI Python: Jadikan program anda menonjol Feb 19, 2024 pm 08:33 PM

Pengenalan kepada pengaturcaraan pythonGUI Pengaturcaraan PythonGUI, iaitu pengaturcaraan antara muka pengguna grafik, ialah proses mencipta antara muka program aplikasi menggunakan bahasa Python. Aplikasi GUI biasanya mempunyai elemen seperti tingkap, butang, kotak teks, menu, dsb., di mana pengguna boleh berinteraksi dengan program. Pengaturcaraan GUI Python mempunyai banyak faedah. Pertama, ia boleh menjadikan program anda lebih cantik dan lebih mudah digunakan. Kedua, ia boleh menjadikan program anda merentas platform, iaitu, ia boleh dijalankan pada sistem pengendalian yang berbeza. Ketiga, ia boleh menjadikan program anda lebih fleksibel dan lebih mudah untuk dilanjutkan. Perpustakaan GUI Python yang biasa digunakan Dalam Python, terdapat banyak perpustakaan GUI yang biasa digunakan, termasuk Tkinter, PyQt, wxPython dan PyG

Seni Pengaturcaraan GUI Python: Mencipta Antara Muka Yang Cantik dan Mudah Digunakan Seni Pengaturcaraan GUI Python: Mencipta Antara Muka Yang Cantik dan Mudah Digunakan Feb 19, 2024 pm 05:36 PM

Pengaturcaraan PythonGUI, seperti namanya, ialah teknologi pengaturcaraan yang menggunakan bahasa Python untuk mencipta antara muka pengguna grafik (GUI). Pengaturcaraan GUI Python mempunyai banyak kelebihan, seperti: platform silang, sokongan perpustakaan pihak ketiga yang kaya, sintaks ringkas, dsb. Oleh itu, pengaturcaraan GUI Python amat digemari oleh pengaturcara dan digunakan secara meluas dalam pelbagai jenis pembangunan aplikasi. Dalam pengaturcaraan GUI Python, perpustakaan pihak ketiga yang paling biasa digunakan ialah Tkinter, PyQt dan wxPython. Tkinter adalah sebahagian daripada pustaka standard Python dan mudah dan mudah digunakan, tetapi mempunyai fungsi terhad. PyQt dan wxPython ialah perpustakaan GUI pihak ketiga yang berkuasa, tetapi ia juga lebih

Pengaturcaraan GUI Python: dari pemula hingga mahir Pengaturcaraan GUI Python: dari pemula hingga mahir Feb 20, 2024 am 10:50 AM

1. Asas pengaturcaraan pythonGUI Pengaturcaraan PythonGUI merujuk kepada proses mencipta antara muka pengguna grafik (GUI) menggunakan bahasa Python. GUI ialah antara muka untuk pengguna berinteraksi dengan aplikasi, biasanya terdiri daripada tingkap, butang, kotak teks, kotak senarai dan kawalan lain. Python menyediakan pelbagai perpustakaan GUI, seperti Tkinter, PyQt, wxPython, dll. Perpustakaan ini menyediakan kawalan yang kaya dan mekanisme pengendalian acara, membolehkan pengaturcara Python mencipta aplikasi GUI yang cantik dan praktikal dengan mudah. 2. Bermula dengan Pengaturcaraan PythonGUI Memasang Perpustakaan PythonGUI Sebelum memulakan pengaturcaraan GUI, anda perlu memasang perpustakaan PythonGUI terlebih dahulu. Mengambil Tkinter sebagai contoh, anda boleh

Apakah pilihan untuk perpustakaan GUI dalam Python? Apakah pilihan untuk perpustakaan GUI dalam Python? Oct 27, 2023 pm 03:10 PM

Python ialah bahasa pengaturcaraan yang mudah dipelajari dan berkuasa sesuai untuk pembangunan dalam pelbagai bidang. Dalam Python, terdapat pelbagai perpustakaan antara muka pengguna grafik (GUI) tersedia yang membantu pembangun mencipta aplikasi desktop interaktif. Artikel ini akan memperkenalkan beberapa perpustakaan GUI Python yang biasa digunakan dan menyediakan contoh kod khusus. Tkinter: Tkinter ialah perpustakaan GUI standard Python yang menyediakan fungsi untuk mencipta aplikasi tetingkap mudah. Menggunakan Tkinter, kita boleh dengan mudah

Penggunaan dan senario biasa acara tersuai Vue Penggunaan dan senario biasa acara tersuai Vue Sep 15, 2023 pm 12:12 PM

Penggunaan dan senario biasa acara tersuai Vue Vue.js ialah rangka kerja JavaScript yang popular untuk membina antara muka pengguna. Dalam Vue, kami boleh melaksanakan komunikasi antara komponen melalui acara tersuai. Acara tersuai ialah salah satu ciri yang sangat berguna dalam Vue, membolehkan kami menghantar data antara komponen yang berbeza dan mencetuskan gelagat tertentu. Artikel ini akan memperkenalkan penggunaan dan senario biasa acara tersuai dalam Vue, dan memberikan contoh kod khusus. 1. Penggunaan asas acara tersuai Dalam Vue, kita boleh

See all articles