最近想用python写个切换host的小工具,折腾了好几天,终于实现了第一步。

采用Tkinter编程,text控件接受输入,然后点击save按钮,保存内容到当前文件夹下,文件名为hostb,如下两张图片:

直接上代码:

  1. #支持中文
  2.  
  3. #!coding:gbk
  4.  
  5. #导入需要的包
  6. from Tkinter import *
  7. import time
  8. import os
  9. import sys;
  10.  
  11. #reload sys
  12. reload(sys);
  13.  
  14. #设置系统的默认编码为utf8
  15. sys.setdefaultencoding('utf8')
  16.  
  17. root = Tk()
  18.  
  19. #定义键盘时间,敲击键盘,会被打印
  20.  
  21. def key(event):
  22. print "pressed", repr(event.char)
  23.  
  24. #定义save按钮的点击事件,保存内容到文件当中
  25.  
  26. def saveClick(event):
  27. with open (os.getcwd()+ r'hostb','w+') as fb:
  28. fb.write(text.get(0.0,'end'))
  29.  
  30. frame = Frame(root, width=300, height=300)
  31. frame.pack()
  32.  
  33. #在frame中定义text空间
  34. text=Text(frame)
  35.  
  36. #放入默认的文案
  37. text.insert(INSERT,"this is text……")
  38.  
  39. #为text bind事件
  40. text.bind("<Key>",key)
  41. text.pack()
  42.  
  43. #定义button按钮
  44. button=Button(frame,text='save')
  45.  
  46. #为按钮绑定事件
  47. button.bind("<Button-1>",saveClick)
  48. button.pack()
  49.  
  50. root.mainloop()
  51.  
  52. 参考资料:http://effbot.org/tkinterbook/tkinter-events-and-bindings.htm
  53.  
  54. 此次比较简单,后续会完善整个程序,为自己做个笔记吧。

python Tkinter接受键盘输入并保存文件的更多相关文章

  1. tkinter获取键盘输入

    tkinter获取键盘输入

  2. 代码实现:从键盘输入接收一个文件夹路径,打印出该文件夹下所有的.java文件名

    package com.loaderman.test; import java.io.File; import java.io.FileReader; import java.util.Scanner ...

  3. Python 3 学习笔记之——键盘输入和读写文件

    1. 键盘输入 Python提供了 input() 内置函数从标准输入读入一行文本,默认的标准输入是键盘.input 可以接收一个 Python 表达式作为输入,并将运算结果返回. str = inp ...

  4. Python 注释和键盘输入,输出数据格式化

    Python中的注释有单行注释和多行注释: Python中单行注释以 # 开头,例如: # 这是一个注释 print("Hello, World!") 多行注释用三个单引号 ''' ...

  5. Java接受键盘输入

    import java.util.Scanner;//方法1 import java.io.BufferedReader;//方法2 import java.io.IOException;//方法3 ...

  6. python 自带的ide 不能保存文件

    初学python 用shell写的代码结果不能保存,经查询,原因有人说是因为文件里有中文, import random secret =random.randint(1,100) guess=0 tr ...

  7. python学习===从键盘输入一些字符,逐个把它们写到磁盘文件上,直到输入一个 # 为止。

    #!/usr/bin/python # -*- coding: UTF-8 -*- if __name__ == '__main__': from sys import stdout filename ...

  8. python+selenium模拟键盘输入

    from selenium.webdriver.common.keys import Keys #键盘导入类 --------------------------------------------- ...

  9. C语言 创建一个 txt 文件 bin输入字符 保存文件在工作文件夹里

    int main(void) { char s[70]; FILE *fp; fp=fopen("123.txt","r"); if((fp=fopen(&qu ...

随机推荐

  1. 动态调用webservice 接口

    1.url:http://localhost:8002/名称.asmx(asmx结尾) 2.需要引用的命名空间:System.Web.Services 3.调用代码: public class Dyn ...

  2. 编程实现linux下的shell

    /************************************************************************* > File Name: Kris_shel ...

  3. poj 3621(最优比率环)

    题目链接:http://poj.org/problem?id=3621 思路:之前做过最小比率生成树,也是属于0/1整数划分问题,这次碰到这道最优比率环,很是熟悉,可惜精度没控制好,要不就是wa,要不 ...

  4. VISO下载地址

    http://pan.baidu.com/share/home?uk=4011207371#category/type=0

  5. copy

    拷贝文件,不覆盖重复文件 yes no|cp -i a b

  6. jackson set properties to default value (取消让jackson 赋予默认值)

    you can define it with Integer rather than int or long. define it with a package type. jackson wont' ...

  7. SVN与CVS的区别大全(转载)

    本节讲解SVN与CVS的区别,主要包括是否更好的冲突标识与处理,是否有更多的本地/离线操作以及元数据管理问题. 更好的冲突标识与处理     通过是否进行更好的冲突标识与处理看SVN与CVS的区别:C ...

  8. AA投资

    AA投资创建于2015年,总部位于北京,创始人成妙绮和王浩泽,专注于天使轮的技术创新驱动的TMT项目投资. 投资方向 AA投资是一家2015年才成立的风险投资机构,专注于种子轮.天使轮.Pre-A轮的 ...

  9. 存储入门 – RAID技术(大图解释)

    对于RAID,一直都知道个概念,但是对于细节没有去仔细的研究过.正好昨天Training的时候, 老师讲解了RAID的内容,所以顺便就整理一下.很多内容都是参考了ISMv2这本书. RAID中用到的技 ...

  10. 【原创】Eclipse中为SVN设置快捷键

            SVN是深受开发者喜爱的版本控制工具,其较CVS有更好的控制策略.在Android开发中,我也选择SVN作为版本控制工具.Eclipse的SVN插件名叫Subclipse,可以到htt ...