wxpython入门_wxPython 入门开发示例

该博客介绍了如何使用wxPython库创建一个简单的GUI应用程序,包括设置窗体、创建文本输入框、静态文本组件、按钮和列表控件。作者通过实例展示了事件绑定,如按钮点击、鼠标进入和离开事件,以及如何处理列表控件的选择事件。此外,还涉及了界面布局管理,如使用BoxSizer和GridSizer。
摘要由CSDN通过智能技术生成

importwxclassFrameMain(wx.Frame):def __init__(self, parent):

wx.Frame.__init__(self, parent, id=-1, title="Hello World", size=(300, 400)) #设置窗体

#状态栏

bar =self.CreateStatusBar()

self.SetStatusBar(bar)"""panel和sizer是wxpython提供的窗口部件。是容器部件,可以用于存放其他窗口部件"""panel=wx.Panel(self)#sizer = wx.BoxSizer(wx.VERTICAL)

sizer = wx.GridSizer(rows=3, cols=3, vgap=5, hgap=5) #vgap hgap代表水平距离和垂直距离

panel.SetSizer(sizer)#创建文本输入框

input_text = wx.TextCtrl(panel, -1, "", pos=(10, 10), size=(150, -1))

input_text.SetInsertionPoint(1) #设置焦点

#sizer.Add(input_text)

#创建静态文本组件

txt = wx.StaticText(panel, -1, "Hello World!", pos=(10, 50), size=(160, 25), style=wx.ALIGN_CENTER)

txt.SetForegroundColour("blue")

txt.SetBackgroundColour("green")

font= wx.Font(12, wx.DEFAULT, wx.ITALIC, wx.NORMAL, True) #ITALIC倾斜

txt.SetFont(font)#sizer.Add(txt)

#按钮

btn = wx.Button(panel, -1, "Click", pos=(10, 90), size=(80, 30))#sizer.Add(btn, 0, wx.TOP | wx.LEFT, 50)

btn.Bind(wx.EVT_BUTTON, self.OnClick)

btn.Bind(wx.EVT_ENTER_WINDOW, self.OnMouseEnter)

btn.Bind(wx.EVT_ENTER_WINDOW, self.OnMouseEnter2)

btn.Bind(wx.EVT_LEAVE_WINDOW, self.OnMouseLeave)#sizer.Add(btn)

#列表控件

color_list = ["红", "绿", "蓝", "白", "紫"]

self.listBox= wx.ListBox(panel, -1, pos=(10, 130), size=(80, 110), choices=color_list, style=wx.LB_SINGLE)

self.listBox.SetSelection(2)

self.Bind(wx.EVT_LISTBOX, self.OnClickList, self.listBox)#sizer.Add(self.listBox)

#表格控件

#self.Center()#将窗口放在桌面环境的中间

defOnClickList(self, event):

index=self.listBox.GetSelection()

wx.MessageBox(self.listBox.GetString(index),"提示")defOnClick(self, event):#dialog = wx.Dialog(None, title="Hi, Clicked!", size=(300, 200))

#dialog.Show()

#self.Close(True)

dialog= wx.TextEntryDialog(None, message="请输入文件名:", caption="文件", value="test")

res=dialog.ShowModal()printresdefOnMouseEnter(self, event):print "Mouse enter"

defOnMouseEnter2(self, event):print "Mouse enter2"event.Skip()#后注册的事件响应函数会覆盖之前的,默认仅执行一个,如需继续则调用Skip

defOnMouseLeave(self, event):print "Mouse leave"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值