python交互式图形编程实例(一)


Posted in Python onNovember 17, 2017

本文实例为大家分享了python交互式图形编程的具体代码,供大家参考,具体内容如下

#!/usr/bin/env python3# -*- coding: utf-8 -*-
#温度转换

from graphics import *
 
win = GraphWin("摄氏温度转换器", 400, 300)
win.setCoords(0.0, 0.0, 3.0, 4.0)
# 绘制接口
Text(Point(1,3), " 摄氏温度:").draw(win)
Text(Point(1,1), " 华氏温度:").draw(win)
input = Entry(Point(2,3), 5)
input.setText("0.0")
input.draw(win)
output = Text(Point(2,1),"")
output.draw(win)
button = Text(Point(1.5,2.0),"转换")
button.draw(win)
Rectangle(Point(1,1.5), Point(2,2.5)).draw(win)
# 等待鼠标点击
win.getMouse()
# 转换输入
celsius = eval(input.getText())
fahrenheit = 9.0/5.0 * celsius + 32.0
# 显示输出,改变按钮
output.setText(fahrenheit)
button.setText("退出")
# 等待响应鼠标点击,退出程序
win.getMouse()
win.close()
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#方块移动

from tkinter import *
 
def main():  
  tk = Tk()
  canvas = Canvas(tk, width = 400, height = 400)
  canvas.pack()
 
  def moverectangle(event):
    if event.keysym == "Up":
      canvas.move(1,0,-5)
    elif event.keysym == "Down":
      canvas.move(1,0,5)
    elif event.keysym == "Left":
      canvas.move(1,-5,0)
    elif event.keysym == "Right":
      canvas.move(1,5,0)
     
  canvas.create_rectangle(180,180,220,220,fill="red")
  canvas.bind_all("<KeyPress-Up>",moverectangle)
  canvas.bind_all("<KeyPress-Down>",moverectangle)
  canvas.bind_all("<KeyPress-Left>",moverectangle)
  canvas.bind_all("<KeyPress-Right>",moverectangle)
  tk.mainloop()
 
if __name__ == '__main__':
  main()
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
from graphics import *

 
def convert(input):
  celsius = eval(input.getText())  # 输入转换
  fahrenheit = 9.0/5.0 * celsius + 32
  return fahrenheit 
def colorChange(win,input):
  cnum = eval(input.getText())
  weight = cnum / 100.0
  newcolor = color_rgb(int(255*weight),int(66+150*(1-weight)),int(255*(1-weight)))
  win.setBackground(newcolor)
def main():
  win = GraphWin("摄氏温度转换", 400, 300)
  win.setCoords(0.0, 0.0, 3.0, 4.0)
  # 绘制输入接口
  Text(Point(1,3),
     " 摄氏温度:").draw(win)
  Text(Point(2,2.7),
     " (请输入: 0.0-100.0 )").draw(win)
  Text(Point(1,1),
     "华氏温度:").draw(win)
  input = Entry(Point(2,3), 5)
  input.setText("0.0")
  input.draw(win)
  output = Text(Point(2,1),"")
  output.draw(win)
  button = Text(Point(1.5,2.0),"转换")
  button.draw(win)
  rect = Rectangle(Point(1,1.5), Point(2,2.5))
  rect.draw(win)
  # 等待鼠标点击
  win.getMouse()
  result = convert(input)  # 转换输入
  output.setText(result)  # 显示输出 
  # 改变颜色
  colorChange(win,input)
  # 改变按钮字体
  button.setText("退出")
  # 等待点击事件,退出程序
  win.getMouse()
  win.close()
 
if __name__ == '__main__':
  main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python导出DBF文件到Excel的方法
Jul 25 Python
使用Python进行二进制文件读写的简单方法(推荐)
Sep 12 Python
Python实现在tkinter中使用matplotlib绘制图形的方法示例
Jan 18 Python
python 给DataFrame增加index行名和columns列名的实现方法
Jun 08 Python
Python查找第n个子串的技巧分享
Jun 27 Python
Tesserocr库的正确安装方式
Oct 19 Python
解决Python print输出不换行没空格的问题
Nov 14 Python
详解从Django Rest Framework响应中删除空字段
Jan 11 Python
【python】matplotlib动态显示详解
Apr 11 Python
python常见字符串处理函数与用法汇总
Oct 30 Python
Python和Sublime整合过程图示
Dec 25 Python
解决python-docx打包之后找不到default.docx的问题
Feb 13 Python
Python金融数据可视化汇总
Nov 17 #Python
详解Python中的Numpy、SciPy、MatPlotLib安装与配置
Nov 17 #Python
Python中super函数的用法
Nov 17 #Python
python使用正则表达式替换匹配成功的组
Nov 17 #Python
python定时利用QQ邮件发送天气预报的实例
Nov 17 #Python
详解python eval函数的妙用
Nov 16 #Python
Python算法之图的遍历
Nov 16 #Python
You might like
php使用curl发送json格式数据实例
2013/12/17 PHP
smarty模板引擎之分配数据类型
2015/03/30 PHP
Laravel 集成 Geetest验证码的方法
2018/05/14 PHP
PHP实现非阻塞模式的方法分析
2018/07/26 PHP
php+js实现裁剪任意形状图片
2018/10/31 PHP
Alliance vs Liquid BO3 第三场2.13
2021/03/10 DOTA
ExtJS PropertyGrid中使用Combobox选择值问题
2010/06/13 Javascript
JQuery中html()方法使用不当带来的陷阱
2011/04/07 Javascript
JS获取客户端IP地址、MAC和主机名的7个方法汇总
2014/07/21 Javascript
jquery uploadify 在FF下无效的解决办法
2014/09/26 Javascript
jquery实现右键菜单插件
2015/03/29 Javascript
js带前后翻页的图片切换效果代码分享
2015/09/08 Javascript
详解如何让InstantClick兼容MathJax、百度统计等
2017/09/12 Javascript
基于es6三点运算符的使用方法(实例讲解)
2017/10/12 Javascript
原生js+css调节音量滑块
2020/01/15 Javascript
在Windows中设置Python环境变量的实例讲解
2018/04/28 Python
Python sklearn KFold 生成交叉验证数据集的方法
2018/12/11 Python
使用Django2快速开发Web项目的详细步骤
2019/01/06 Python
Python判断两个文件是否相同与两个文本进行相同项筛选的方法
2019/03/01 Python
如何用Python制作微信好友个性签名词云图
2019/06/28 Python
Pandas分组与排序的实现
2019/07/23 Python
np.dot()函数的用法详解
2020/01/17 Python
推荐值得学习的12款python-web开发框架
2020/08/10 Python
Python logging模块handlers用法详解
2020/08/14 Python
python 从list中随机取值的方法
2020/11/16 Python
CSS实现半透明边框与多重边框的场景分析
2019/11/13 HTML / CSS
英国领先的奢侈品零售商之一:CRUISE
2016/12/02 全球购物
英语专业大学生求职简历的自我评价
2013/10/18 职场文书
优秀员工获奖感言
2014/03/01 职场文书
小组名称和口号
2014/06/09 职场文书
合作协议书范文
2014/08/20 职场文书
软环境建设心得体会
2014/09/09 职场文书
运动员入场词
2015/07/18 职场文书
新手入门Mysql--sql执行过程
2021/06/20 MySQL
redis复制有可能碰到的问题汇总
2022/04/03 Redis
Golang原生rpc(rpc服务端源码解读)
2022/04/07 Golang