大家好,又见面了,我是你们的朋友全栈君。
Python wxPython在资源上比较小,而且官方文档也不好找,wxPython在python 2.x和python 3.x安装上有区别: 以下为python3.x安装为例: 1.网上下载whl文件安装:路径:https://wxpython.org/Phoenix/snapshot-builds/ 文件名解释: wxPython_Phoenix-3.0.3.dev2812+b3485d4-cp35-cp35m-win_amd64.whl cp35代表python版本3.5 然后用pip安装即可完成安装。
简单使用: 这里有2中方法使用,第一就是用wxFormBuilder这款开源软件直接进行简单编辑界面,生成代码可以直接复制到py文件,直接运行即可实现GUI简单开发。wxFormBuilder下载地址: https://sourceforge.net/projects/wxformbuilder/ wxFormBuilder简单使用方法可以网上自己找找。
第二种就是直接写代码形式,这个比较考验对API的熟悉掌握程度。不过大致上都是有一个固定格式的。 格式如下:
import wx class Frame(wx.Frame): # 定义一个 wx.Frame的子类,以便我们更容量控制框架的内容和外观 “”” Frame class that displays an image.””” def __init__(self, image, parent=None, id=-1, pos=wx.DefaultPosition, title=’Hello, wxPython!’): # 给我们的框架的构造器增加一个图像参数。这个值通过我们的应用程序 # 类在创建一个框架的实例时提供 “””Create a Frame instance and display image.””” # 用 wx.StaticBitmap控件来显示这个图像,它要求一个位图 temp = image.ConvertToBitmap() size = temp.GetWidth(), temp.GetHeight() wx.Frame.__init__(self, parent, id, title, pos, size) self.bmp = wx.StaticBitmap(parent=self, bitmap=temp) class App(wx.App): # 定义一个带有 OnInit()方法的 wx.App的子类 “””Application class.””” def OnInit(self): # 使用与 hello.py在同一目录下的名为 wxPython.jpg的文件创建了一个图像对象 image = wx.Image(‘wxPython.jpg’, wx.BITMAP_TYPE_JPEG) self.frame = Frame(image) self.frame.Show() self.SetTopWindow(self.frame) return True def main(): # main()函数创建一个应用程序的实例并启动wxPython的事件循环 app = App() app.MainLoop() if __name__ == ‘__main__’: main() 这是重写类的方法,这比较常用的,而且用wxFormBuilder生成的代码也是这样的格式。
至于各个控件的属性,方法,参数的就不一一列举,具体可以看官网文档: https://wxpython.org/Phoenix/docs/html/main.html http://xoomer.virgilio.it/infinity77/wxPython/widgets.html#t 个人比较推荐第二个,,感觉比较齐全
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/143339.html原文链接:https://javaforall.cn
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有