CGI--python图形化(wxpython包)

版权声明:本文为博主原创文章,未经博主允许不得转载 https://blog.csdn.net/g_optimistic/article/details/88648608

目录

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,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面

CGI web端的接口
GUI 图形用户界面

2.图形化的结构

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

3.python导入图形化

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

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编码

 

猜你喜欢

转载自blog.csdn.net/g_optimistic/article/details/88648608