想法:用python+tkinter+pypyodbc+xlrd+xlwt实现从已有数据库调取你想要的数据,生成EXCEL.xls文件。
![d8d4c1aee58dfac9769c6f8a775afebf.png](https://i-blog.csdnimg.cn/blog_migrate/58648a006da779141f51922e1606e963.jpeg)
生活处处有Idea
一、需求分析。
完成的界面如下图,左上方通过选择按键选择ACCESS数据库路径,右上方输入仪器的证书编号,点击搜索,左下方会出现相应的内容。
中间4个按键分别是按住CTRL+鼠标左键可以单个选择左边Treeview的内容展现到右边Treeview、选择左边全部Treeview的内容展现到右边Treeview、按住CTRL+鼠标左键可以单个选择右边Treeview的内容展现到左边Treeview、选择右边全部Treeview的内容展现到左边Treeview。
右上方转换按键,可以让右边Treeview的每行相关内容转换成单个excel.xls文件,文件以出厂编号命名,并放在以检索单号命名的文件夹里面。
![b59670893883858af026ed4c56a984b4.png](https://i-blog.csdnimg.cn/blog_migrate/9c2b9a7819d5fed58a47d67601fcb18e.jpeg)
界面
二、实现过程。
1、操作ACCESS(.mdb)步骤
我的电脑是win10 64位,加python3.5的环境,首先要装ACCESS驱动,其实只要你电脑装了office ACCESS就OK了。接着pip install pypyodbc,装pypyodbc库,在python交互式环境下输入import pypyodbc,就能检验安装pypyodbc。
![1cdacb3cc9d7be8cfad5bee0e116b723.png](https://i-blog.csdnimg.cn/blog_migrate/6e171de8f51434eb0825dd65c56b0c13.jpeg)
成功安装odbc
下面是我项目中实现操作ACCESS数据库的一个例子,其中self.alldata1等都是从数据库得到的可迭代的数据:
![b6b95ccd003535f44f0f9243758fb5ed.png](https://i-blog.csdnimg.cn/blog_migrate/215bc5ecbc0b2ba77e4a6da61a7bcd56.jpeg)
操作ACCESS例子
2、界面布局
我的思路是这样的:把整个界面分成5个Frame,左上,右上,左下,中间,右下。
![a085806d135b2ca752d28bb2508efa97.png](https://i-blog.csdnimg.cn/blog_migrate/50221b2f3331e9a75e4bc57c750e5a82.jpeg)
左上界面代码
![b9d92c28afa8d3e7ffeddc5915904c88.png](https://i-blog.csdnimg.cn/blog_migrate/a3fe70e348dd1cd55f7c25a5af759761.jpeg)
右上界面代码
ttk的Treeview拥有完美展示数据表格的能力,再加上绑定了X轴和Y轴的滚动条。
![0ce1124ada6f5af85c531097489e5e4c.png](https://i-blog.csdnimg.cn/blog_migrate/824b7d95484ec74c81d349d825cd9313.jpeg)
左下界面
3、操作EXCEL。
用python 的库xlrd和xlwt,实现读取和写入.xls文件。
![cb5320ea035a6f69fc52803b19469de4.png](https://i-blog.csdnimg.cn/blog_migrate/ecf7d7ad738815233280baf63e24a8c7.jpeg)
xlwd和xlrt
通过self.ws.write(row,column,content,self.style_font),实现数据写入excel,其中row和column代表写入的位置,,content是要写入到内容,self_font是数据写入的格式。
小编最近手头上的事情较多,停更了一周,如有不懂之处,欢迎骚扰小编哈哈,更多精彩python项目,敬请关注江湖小龙555。