目录

1.图形化CGI

2.图形化的结构

3.python导入图形化

4.python导入第三方的包wxpython的方法

(1)pip install wxpython

(2)pip install wxpython -i 国内的源

(3)pycharm

4.图形化结构的代码实现

5.案例

(1)需求

(2)效果

 打开文件

保存文件


1.图形化CGI

图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面

CGIweb端的接口
GUI图形用户界面

2.图形化的结构

主循环一个图形化程序的核心
组件按钮
 文本框
 滚动条
事件函数

3.python导入图形化

wx跨平台图形化,但是linux不好安装
tkinter真正的图形化,国外大学必须学
pyqtpython最成熟的图形化,帮助文档:724000行
pywinwindows下的图形化,可以做外挂

4.python导入第三方的包wxpython的方法

(1)pip install wxpython

国外的网址

(2)pip install wxpython -i 国内的源

清华大学https://pypi.tuna.tsinghua.edu.cn/simple
阿里云 http://mirrors.aliyun.com/pypi/simple/
中国科技大学https://pypi.mirrors.ustc.edu.cn/simple/
华中理工大学 http://pypi.hustunique.com/
山东理工大学http://pypi.sdutlinux.org/
豆瓣http://pypi.douban.com/simple/

(3)pycharm

4.图形化结构的代码实现

#coding:utf-8
import wx
app=wx.App()#创建主循环(创建应用)死循环
frame=wx.frame(None)#窗口组件
"""
frame的参数有:
parent  父组件
id=ID_ANY  组件的标识
title=EmptyString 文本框的标题
pos=DefaultPosition  位置  图形化的左上角点距离上层图形左和上的距离
size=DefaultSize  尺寸  宽高
style=DEFAULT_FRAME_STYLE  样式
"""
wx.Button()
"""
按钮:
label=EmptyString
validator=DefaultValidator
"""
wx.TextCtrl()
"""
文本框:
value=EmptyString  文本框里的值
"""
frame.Show()#Show 属性
app.MainLoop()#启动主循环

5.案例

(1)需求

把文件的路径填进去,保存,把文件的内容展示在文本框中

在文本框中填入自己想写的数据,填好路径,保存文件

import wx


def openFile(event):
    path = path_text.GetValue()
    with open(path, "rb") as f:
        content_text.SetValue(f.read().decode())


def saveFile(event):
    path = path_text.GetValue()
    with open(path, "wb") as f:
        content = content_text.GetValue()
        f.write(content.encode())


app = wx.App()
frame = wx.Frame(None, title="老边的图形化", size=(485, 400))
path_text = wx.TextCtrl(frame, value="图形化", pos=(5, 5), size=(300, 24))
open_button = wx.Button(frame, label="打开", pos=(310, 5), size=(72, 24))
open_button.Bind(wx.EVT_BUTTON, openFile)
save_button = wx.Button(frame, label="保存", pos=(392, 5), size=(72, 24))
save_button.Bind(wx.EVT_BUTTON, saveFile)
content_text = wx.TextCtrl(frame, pos=(5, 34), size=(457, 321), style=wx.TE_MULTILINE)
frame.Show()
app.MainLoop()

(2)效果

 打开文件

保存文件

解决办法:在py脚本中写入

#coding:gbk

注意:读进去数据,要进行解码  decode

          写进去数据,要进行编码  encode

并且编码解码要保持一致 ,都用gbk编码

 

 

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐