| 
 | 
    
 
图像.png 
 
简单来说,GUI编程就是给程序添加图形界面。 
 
脚本开发简单,有时只需几行代码就可以实现丰富的功能天外神坛源码网,而且是跨平台的,深受程序员的喜爱。 
 
如果给程序添加图形界面,那么普通用户也可以使用脚本,大大提高了工作效率。因此,在程序中加入图形界面,将自己编写的脚本提供给普通用户python简单代码示例,确实是一件令人兴奋的事情! 
 
如何在脚本中添加图形界面? 
 
作者首先考虑了通过浏览器运行的图形界面。为了达到想要的效果,需要实现一些功能,还需要额外安装pyv8模块。折腾了一下,发现pyv8模块安装很麻烦,依赖库很多。安装也是基于不同的操作系统,有各种坑,pyv8不适合普通用户,所以暂时搁置了pyv8模块。 
 
软件界面 
 
然后我将pyqt5与两个模块进行了比较: 
 
pyqt5功能强大,界面美观,但语法比较复杂。pyqt5模块需要单独安装,不适合初学者; 
 
它是一个内置模块,可以满足基本的功能需求,语法也简单。基本上5分钟就可以上手,所以我最终选择了它。 
 
网络上当前 GUI 教程的问题: 
 
1.功能太简单了,基本功能就是在“fancy”中显示“Hello World”; 
 
2.评论不清楚,复制粘贴别人写的博客代码,代码不全 
 
3.版本老了,都是.7的程序。例如,导入方法应该是 
 
这次笔者选择了一个“根据ip地址定位地理位置”的脚本作为本教程的素材,比较好玩,也比较容易实现: 
 
解释的内容放在评论里,上面的代码: 
 
班级(): 
 
定义(自我): 
 
self.gi = .GeoIP("./.dat") 
 
# 创建主窗口以容纳其他组件 
 
self.root = .Tk() 
 
# 设置主窗口的标题内容 
 
self.root.title("全球定位ip位置(离线版)") 
 
# 创建输入框并设置大小 
 
自己。= .Entry(self.root,width=30) 
 
# 创建一个回显列表 
 
自己。= .(self.root, width=50) 
 
# 为查询结果创建一个按钮 
 
自己。= .(self.root, = self., text = "查询") 
 
# 完成布局 
 
定义(自我): 
 
自我..pack() 
 
自我..pack() 
 
自我..pack() 
 
# 根据ip查找位置 
 
定义(自我): 
 
# 获取输入信息 
 
自己。= self..get() 
 
 
 
目标 = self.gi.(self.) 
 
# 为了避免非法取值,导致程序崩溃,有兴趣的可以用正则规则写具体的规则。为了方便新手理解,减少代码量,我直接粗略过滤 
 
尝试: 
 
# 获取目标城市 
 
城市 =目标[“城市”] 
 
# 获取目标国家 
 
= 目标[""] 
 
# 获取目标区域 
 
= 目标[""] 
 
# 获取目标经度 
 
= 目标[""] 
 
# 获取目标纬度 
 
= 目标[""] 
 
: 
 
经过 
 
# 创建一个临时列表 
 
= ["纬度:"+str(),"经度:"+str(),"地区代码:"+str(),"城市:"+str(city),"国家或地区:" +str() , "要查询的ip:"+str(self.)] 
 
#清除回显列表的可见部分,类似于clear命令 
 
对于范围内的项目(10): 
 
自我..(0,"") 
 
# 给回显列表赋值 
 
对于项目: 
 
自我..(0,项目) 
 
# 这里的返回值没什么用python简单代码示例,只是为了好看 
 
定义主(): 
 
# 初始化对象 
 
FL = () 
 
# 进行布局 
 
佛罗里达州() 
 
# 主程序执行 
 
.() 
 
经过 
 
如果 == "": 
 
主要的() 
 
运行效果(为了更好的演示效果,使用了gif图片,图片尺寸较大,建议在wifi环境下观看,土豪免费~): 
 
一个大尺寸的演示! 
 
由于离线查询ip需要全球IP分布数据,我直接选择了免费离线查询ip数据包。为了读取这个包的数据,我还需要安装一个模块:pip。过去几个人安装的时候,选择如果不包含安装包,为了学习,还是需要加上这个模块:pip 
 
---9 月 27 日更新--- 
 
教程中涉及的资源通过百度网盘与大家分享。为了方便大家下载,将资源整合到单独的帖子中。链接如下: |   
 
    
    
        
            【天外神坛】免责声明及帮助 
        
        
1.重要:如果遇到隐藏内容回复后显示为代码状态,直接刷新一下页面即可解决此问题。 
2.本文部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责。 
3.若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。 
4.如果本站有侵犯、不妥之处的资源,请在网站右边客服联系我们。将会第一时间解决! 
5.本站所有内容均由互联网收集整理、网友上传,仅供大家参考、学习,不存在任何商业目的与商业用途。 
6.本站提供的所有资源仅供参考学习使用,版权归原著所有,禁止下载本站资源参与商业和非法行为,请在24小时之内自行删除! 
 
     
 
 
 |