zoukankan      html  css  js  c++  java
  • 使用wxPython制作GUI小工具

      我们项目客户端能看到的服务器列表由一个叫IPList.txt文本文件提供,每次启动客户端都会从CDN下载最新版本的IPList.txt。前两天运营同学那边提过来一个小工具需求,公测时对各个渠道需要提供不同的IPList.txt,如果临时加开新服或者修改老服状态(火爆/拥挤/顺畅),时间紧急手动修改容易出错,希望能有可视化工具修改。

      这项工作到我手上之后,大致思索了下,决定用Python实现。用Python写过一些小工具,但没有做过GUI,查了下资料,采用了推荐比较多的wxPython库。工具逻辑非常简单,只是修改txt文件而已,但前后也花了大半天的时间,一方面是代码摆控件花了不少时间(怀念MFC的拖控件。。。),另一方面也是在字符编码上遇到了一些问题。总结经验如下:

      使用Python读写有确定编码格式文件时, 一定使用codecs.open替代open。

      读出来的行使用line = line.replace(' ','')去掉换行符,等写之前再依次加上,最后一行不加,这样中间过程不用考虑换行符。

      wxPython的文件选择框返回的路径,如果是磁盘根目录,不会有’’分隔符,即打开D盘根目录下IPList.txt文件,返回的是”D:List.txt”,如果打开D盘下Test目录下IPList.txt文件,则返回的是”D:TestIPList.txt”。感觉像是Bug,但现状就是需要手动处理,不然保存时会找不到文件。

     

      整体来讲,使用wxPytho开发GUI程序过程令人满意,工具截图如下:

      

      代码:https://github.com/gns333/IPListTool

  • 相关阅读:
    DataPager 分页样式(css)
    Mysql日志详解
    Oracle 优化器
    [oracle]对象统计数据
    [oracle] analyze 和dbms_stats 的区别
    增加SAP HEAP大小
    Problems with SYSDBA/SYSOPER/INTERNAL connect
    Physical Standby Switchover_status Showing Not Allowed
    REHL8 oracle 19C RAC安装中的坑
    REHL8 oracle 19C RAC安装四(数据库创建)
  • 原文地址:https://www.cnblogs.com/gns3/p/4038817.html
Copyright © 2011-2022 走看看