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 正则式 概述及常用字符
May 07 Python
Python实现更改图片尺寸大小的方法(基于Pillow包)
Sep 19 Python
Python利用flask sqlalchemy实现分页效果
Aug 02 Python
python读取视频流提取视频帧的两种方法
Oct 22 Python
python获取命令行输入参数列表的实例代码
Jun 23 Python
Python3数据库操作包pymysql的操作方法
Jul 16 Python
Selenium控制浏览器常见操作示例
Aug 13 Python
搭建python django虚拟环境完整步骤详解
Jul 08 Python
python使用正则表达式(Regular Expression)方法超详细
Dec 30 Python
Python如何脚本过滤文件中的注释
May 27 Python
Python3以GitHub为例来实现模拟登录和爬取的实例讲解
Jul 30 Python
Pandas数据分析的一些常用小技巧
Feb 07 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
一个捕获函数输出的函数
2007/02/14 PHP
Windows IIS PHP 5.2 安装与配置方法
2009/06/08 PHP
PHP错误抑制符(@)导致引用传参失败Bug的分析
2011/05/02 PHP
PHP中strtotime函数使用方法分享
2012/01/10 PHP
PHP实现微信模拟登陆并给用户发送消息的方法【文字,图片,图文】
2017/06/29 PHP
浅谈PHP封装CURL
2019/03/06 PHP
JavaScript中的类继承
2010/11/25 Javascript
jquery实现的让超出显示范围外的导航自动固定屏幕最顶上
2011/09/22 Javascript
自己动手制作jquery插件之自动添加删除行功能介绍
2011/10/14 Javascript
P3P Header解决Cookie跨域的问题
2013/03/12 Javascript
javascript中定义类的方法详解
2015/02/10 Javascript
js/jquery判断浏览器类型的方法小结
2015/05/12 Javascript
Bootstrap入门书籍之(零)Bootstrap简介
2016/02/17 Javascript
用jmSlip编写移动端顶部日历选择控件
2016/10/24 Javascript
React路由管理之React Router总结
2018/05/10 Javascript
QRCode.js二维码生成并能长按识别
2018/10/16 Javascript
nodejs开发一个最简单的web服务器实例讲解
2020/01/02 NodeJs
原生JS实现烟花效果
2020/03/10 Javascript
python安装mysql-python简明笔记(ubuntu环境)
2016/06/25 Python
Python实现的选择排序算法示例
2017/11/29 Python
Python实现读取txt文件中的数据并绘制出图形操作示例
2019/02/26 Python
python之pyqt5通过按钮改变Label的背景颜色方法
2019/06/13 Python
使用pyshp包进行shapefile文件修改的例子
2019/12/06 Python
pycharm 2018 激活码及破解补丁激活方式
2020/09/21 Python
国际礼品店:GiftsnIdeas
2018/05/03 全球购物
HashMap和Hashtable的区别
2013/05/18 面试题
房地产融资计划书
2014/01/10 职场文书
单位介绍信范文
2014/01/18 职场文书
职工运动会邀请函
2014/01/19 职场文书
《落花生》教学反思
2014/02/25 职场文书
医院科室评语
2015/01/04 职场文书
武侯祠导游词
2015/02/04 职场文书
商场收银员岗位职责
2015/04/07 职场文书
老干部局2015年度工作总结
2015/10/22 职场文书
驾驶员安全责任协议书
2016/03/22 职场文书
浅谈mysql哪些情况会导致索引失效
2021/11/20 MySQL