Python进行GUI开发的库其实很多,下面我简单介绍几个不错的库,感兴趣的朋友可以自己尝试一下,实验环境win10+python36+pycharm50,主要内容如下:
tkinter
这个就不用多说了,python自带的GUI开发标准库,对于开发小型简单的应用来说,完全可以了,开源、跨平台,使用起来非常方便,下面我简单测试一下,主要代码如下:
点击运行程序,效果如下,一个窗口一个Label标签:
easygui
这个是基于tkinter的一个窗口GUI库,可以快速创建窗口对话框,包括常见的登陆对话框、注册对话框等,下面我简单介绍一下这个库的安装和使用:
1首先,安装easygui,这个直接在cmd窗口输入安装命令“pipinstalleasygui”就行,如下:
2安装完成后,我们就可以直接编写代码进行测试了,主要代码如下,非常简单:
点击运行这个程序,效果如下:
kivy
这是一个跨平台的GUI应用程序开发库,可以用来开发安卓、苹果应用,一套程序,可以处处运行,下面我简单介绍一下这个库的安装和使用:
1首先,安装kivy,这个直接按官方教程安装就行,如下:
2安装完成后,就可以直接编写代码进行测试了,主要代码如下,非常简单:
点击运行程序,效果如下,这里你可以将其打包为手机应用,安装到手机上:
wxpython
这也是一个免费、跨平台的PythonGUI开发库,相比较前面的tkinter来说,功能更为强大,控件也更多,下面我简单介绍一下这个库的安装和使用:
1首先,安装wxpython,这个也直接在cmd窗口输入命令“pipinstallwxpython”就行,如下:
2安装完成后,我们就可以直接编写相关代码进行测试了,主要代码如下,非常简单,一个简单的文本编辑器:
点击运行这个程序,效果如下:
pyqt
这个Qt的一个Python接口库,借助于Qt强大的用户界面,Python也可以快速开发出GUI程序,组件更多,也更方便,只要你有一定的Qt基础,很快就能掌握这个库的使用,下面我简单介绍一下这个库的安装和使用:
1首先,安装pyqt,这个直接在cmd窗口输入安装命令“pipinstallpyqt5”就行,如下,安装需要稍微等待一会儿:
2安装完成后,我们就可以直接编写代码进行测试了,如下,一个简单的计算器:
点击运行这个程序,效果如下:
至此,我们就介绍完了这5个PythonGUI库。总的来说,这5个库使用起来都非常不错,如果你的应用界面比较简单,功能要求不高,可以选择tkinter和easygui,如果界面比较复杂,功能要求比较复杂,可以考虑使用wxpython或pyqt,当然,你也可以使用其他GUI库,像pygame等,根据实际项目需求而定,网上也有相关资料和教程,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言。
#!/usr/bin/env python
# -- coding: utf-8 --
import wx
class MyFrame3(wxFrame):
def __init__(self, args, kwds):
# begin wxGlade: MyFrame3__init__
kwds["style"] = wxDEFAULT_FRAME_STYLE
wxFrame__init__(self, args, kwds)
selfsizer_7_staticbox = wxStaticBox(self, -1, _(u"显示区"))
selfsizer_6_staticbox = wxStaticBox(self, -1, _(u"功能区"))
selfradio_box_1 = wxRadioBox(self, -1, _("radio_box_1"), choices=[_("choice 1"), _("choice 2"), _("choice 3")], majorDimension=0, style=wxRA_SPECIFY_ROWS)
selfbutton_1 = wxButton(self, -1, _("button_1"))
selftext_ctrl_1 = wxTextCtrl(self, -1, "", style=wxTE_RICH2)
self__set_properties()
self__do_layout()
selfBind(wxEVT_BUTTON, selfclickButton, selfbutton_1)
# end wxGlade
def __set_properties(self):
# begin wxGlade: MyFrame3__set_properties
selfSetTitle(_("frame_4"))
selfSetSize((400, 300))
selfradio_box_1SetMinSize((210, 90))
selfradio_box_1SetSelection(0)
selfbutton_1SetMinSize((170, 90))
selftext_ctrl_1SetMinSize((390, 99))
# end wxGlade
def __do_layout(self):
# begin wxGlade: MyFrame3__do_layout
sizer_4 = wxBoxSizer(wxVERTICAL)
sizer_5 = wxBoxSizer(wxVERTICAL)
sizer_7 = wxStaticBoxSizer(selfsizer_7_staticbox, wxVERTICAL)
sizer_6 = wxStaticBoxSizer(selfsizer_6_staticbox, wxVERTICAL)
sizer_8 = wxBoxSizer(wxHORIZONTAL)
sizer_8Add(selfradio_box_1, 0, wxALIGN_CENTER_VERTICAL, 0)
sizer_8Add(selfbutton_1, 0, wxALIGN_CENTER_VERTICAL, 0)
sizer_6Add(sizer_8, 1, wxEXPAND, 0)
sizer_5Add(sizer_6, 1, wxEXPAND, 0)
sizer_7Add(selftext_ctrl_1, 0, 0, 0)
sizer_5Add(sizer_7, 1, wxEXPAND, 0)
sizer_4Add(sizer_5, 1, wxEXPAND, 0)
selfSetSizer(sizer_4)
selfLayout()
# end wxGlade
def clickButton(self, event):
print "Event handler `clickButton' not implemented!"
eventSkip()
# end of class MyFrame3
if __name__ == "__main__":
import gettext
gettextinstall("app") # replace with the appropriate catalog name
app = wxPySimpleApp(0)
wxInitAllImageHandlers()
frame_4 = MyFrame3(None, -1, "")
appSetTopWindow(frame_4)
frame_4Show()
appMainLoop()
按照你的要求做了个界面,调用clickButton函数处理你的逻辑,然后调用textbox的setvalue方法将你的结果写到文本框中
你觉得界面不合理的话,你可以自己调用layout和properties两个参数是界面参数
纯C的很少,windows32
sdk和linux的gtk是为数不多的2个库。
现代基本没有用C开发gui的,C++是更好的选择,像qt
mfc比win32好用得多。
开发效率更高的是python,tkinter
wxwidget
pyqt都很方便
以上就是关于Python如何进行GUI桌面开发有哪些不错的库可以推荐全部的内容,包括:Python如何进行GUI桌面开发有哪些不错的库可以推荐、用python写了一个检索人名的小程序,但不知道如何使程序与用wxPython写的GUI相联系,程序如下,望前辈指点、C语言如何开发桌面GUI应用程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)