一开始想做图像化是觉得很好玩 然后百度了python能用的图形化,最后选择了wxpython.
安装这个也废了半天劲,以为要下载包来进行安装
实际只要在命令行输入:pip install wxpython就可以了
下面的那些命令是试一下是否安装成功。
代码如下:
>>> import wx
>>>
>>> app = wx.App(False)
>>> frame = wx.Frame(None,wx.ID_ANY,"Hello World")
>>> frame.Show(True)
True
>>> app.MainLoop()
没有出错就代表安装成功了。之后我就百度了wxpython的用法,发现还要用代码来画框架,实在是太麻烦了,因为大学学过一些MFC编程,那个图形化的框架基本都是拖拽,功夫不负懒人,我找到了wxFromBuilder。
下载地址:https://sourceforge.net/projects/wxformbuilder/?source=typ_redirect
或者,链接:https://pan.baidu.com/s/12yn200kS83xXPpWTZHn4xA 密码:y703
接下来就是安装,差不多就是下一步下一步选文件夹同意协议云云。
安装好之后的界面如图:
点击Component Palette中的Forms标签,然后点击下边一个类似窗体的标签Frame,之后点击Designer,可以看到一个简单的窗体。
点击标签Layout 然后点击小图标wxBoxSizer
下面开始放控件,点击标签Common,然后下方的按钮都可以尝试的点,可以看到窗体内会多很多控件,挑选自己喜欢的加上,不需要的可以在左侧目录树中右键然后删除。
通过最右侧的Obiect Properties,可以更改控件的属性,例如name,title等
这里我们将MyFrame1的名称改为BaseMainWind
剩下的label可以改也可以不改,我大致更改了一下窗体显示的文字。
接下来是加控件触发的函数,目的是将文本框中的内容重置。
点击选中按钮控件m_button1,在最右侧的Obiect Properties中,点击上面的另外一个标签“Events”。添加一个给“OnButtonClick”的处理函数名:main_button_click。
窗体设计暂时告一段落,按下F5,然后出来一个对话框点击ok。
就会弹出来我们设计的窗体。
点击左侧目录树的MyProject1,再点击右侧的Python
这就是整个窗体的wxpython代码了。全选复制下来,保存到test1.py文件中。
接下来就是逻辑的代码了,
# -*- coding: UTF-8 -*-
import wx
import test1
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
class MianWindow(test1.BaseMainWind):
# 首先,咱们从刚刚源文件中将主窗体继承下来.就是修改过name属性的主窗体咯。
def init_main_window(self):
self.text_main.SetValue(u'你好')
def main_button_click(self, event):
self.text_main.Clear()
if __name__ == '__main__':
app = wx.App()
main_win = MianWindow(None)
main_win.init_main_window()
main_win.Show()
app.MainLoop()
将上面的逻辑代码保存为main_win.py,并跟刚刚生成那个test1.py,放在同一个目录里。cmd环境下运行
成功 告一段落