这一篇教程,我们继续完成图形界面程序的功能部分。
在我们之前编写的图形界面程序中包含以下功能:
- 打开选取的文件到文本控件
- 保存文本控件的内容到文件
那么,对于这两个功能,我们要定义相应的功能函数。
示例代码:
def open_file(event): file_path = file_btn.GetPath() # 从文件选择器控件获取文件路径 with open(file_path) as file: # 打开文件 cont_ipt.SetValue(file.read()) # 读取文件内容设置到文本控件的值 def save_file(event): file_path = file_btn.GetPath() # 从文件选择器控件获取文件路径 with open(file_path, 'w') as file: # 写入模式打开文件 file.write(cont_ipt.GetValue()) # 获取文本控件的值写入文件
在上方代码中,大家能够看到,我们通过Get方法能够获取到控件中的路径以及值。
实际上控件的Get方法还有很多,在这里没有办法一一介绍。
这里只介绍比较常用的一些方法:
- GetPath():获取路径。
- GetValue():获取控件的值。
- GetLabel():获取控件的标签文本。
- GetName():获取控件的名称。
- GetId():获取控件的ID。
- GetSize():获取控件的尺寸。
- GetPosition():获取控件的位置。
更多的Get方法可以查看官方文档中的详细介绍。【点此查看】
完成了功能函数的编写,接下来我们需要将功能函数和控件进行绑定,才能够在用户和控件产生交互时,调用功能函数。
示例代码:
open_btn.Bind(wx.EVT_BUTTON, open_file) # 绑定打开文件按钮 save_btn.Bind(wx.EVT_BUTTON, save_file) # 绑定保存文件按钮
到这里,这个图形界面程序就完成了。
我们不但可以在PyCharm中运行代码查看效果,也可以到本地磁盘的文件夹中,双击py文件运行这个程序。
不过,在运行时会弹出一个py.exe的窗口,这是因为py文件会通过py.exe运行。
如果不想看到这个窗口,可以把文件的后缀改为“.pyw”,这样的话程序就会通过pyw.exe运行,不会再显示多余的窗口。
在PyCharm中修改文件名,可以在文件上点击鼠标右键,选择重构(Refactor)选项中的重命名(Rename)选项进行修改。
也可以点中文件后,通过快捷键<Shift+F6>进行修改。
最后,我们再来了解一些关于Python文件类型的知识。
Python文件有以下几种类型:
- py:源代码文件。由 py.exe 运行,也可以通过命令行终端运行。
- pyw:图形界面程序源代码文件。由pyw.exe运行,和py运行的区别在于不会显示命令行窗口。不过,还是建议大家在编程过程中,先将源代码命名为py文件,当程序出现错误时,能够在命令行窗口看到相关信息。
- pyc:py文件经过编译后产生的文件,无法直接看到源代码。因为已经经过编译,运行速度比py文件更快。
- pyo:py文件优化编译后产生的文件,无法直接看到源代码。可以在命令行窗口,通过 “python -O 源代码文件”将源代码文件编译为pyo 文件。
- pyd:这类文件不是用 python 编写成的,一般是其他语言编写的 python 扩展模块。
提示:本篇教程相关源代码较长,不方便在此展示,大家可以下载这个程序的py文件。【点此下载】
本节知识点:
1、控件绑定函数
2、控件对象的Get方法
3、Python文件类型简介
本节英文单词与中文释义:
1、refactor:重构
2、rename:重命名
练习:
编写一个简单的计算器。
提示:
1、布局需要尺寸器嵌套,参考下图。
第一种嵌套结构:
红色:面板的垂直布局尺寸器,嵌套蓝色尺寸器。
蓝色:除了文本控件,另外两个是水平布局尺寸器,第2个尺寸器中嵌套紫色尺寸器。
紫色:左侧为垂直布局尺寸器,嵌套绿色尺寸器,右侧为按钮控件。
绿色:3个水平布局尺寸器,每个尺寸器添加相应的按钮控件。
第二种嵌套结构:
红色:面板的垂直布局尺寸器,嵌套蓝色尺寸器。
蓝色:上方为文本控件,下方为水平布局尺寸器,嵌套5个紫色尺寸器。
紫色:垂直布局尺寸器,每个尺寸器添加相应的按钮控件。
参考文件使用的是第二种嵌套结构。
2、控件绑定功能函数时,不能够直接传递参数,可以通过lambda表达式调用功能函数并传入参数。
参考文件:【点击下载】
说明:参考文件仅供参考,并非最优方案。
转载请注明:魔力Python » Python3萌新入门笔记(44)