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中使用模块的教程
Apr 27 Python
利用Python如何生成hash值示例详解
Dec 20 Python
详解TensorFlow查看ckpt中变量的几种方法
Jun 19 Python
Python不使用int()函数把字符串转换为数字的方法
Jul 09 Python
python pands实现execl转csv 并修改csv指定列的方法
Dec 12 Python
Python 从一个文件中调用另一个文件的类方法
Jan 10 Python
对python中字典keys,values,items的使用详解
Feb 03 Python
Python3.7 dataclass使用指南小结
Feb 22 Python
python socket通信编程实现文件上传代码实例
Dec 14 Python
python字符串,元组,列表,字典互转代码实例详解
Feb 14 Python
Python json格式化打印实现过程解析
Jul 21 Python
Python深度学习之Pytorch初步使用
May 20 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无限极分类的案例教程
2016/05/09 PHP
php 人员权限管理(RBAC)实例(推荐)
2017/05/24 PHP
JavaScript脚本语言在网页中的简单应用
2007/05/13 Javascript
lyhucSelect基于Jquery的Select数据联动插件
2011/03/29 Javascript
Javascript和HTML5利用canvas构建Web五子棋游戏实现算法
2013/07/17 Javascript
鼠标焦点离开文本框时验证的js代码
2013/07/19 Javascript
jQuery自动切换/点击切换选项卡效果的小例子
2013/08/12 Javascript
浏览器兼容的JS写法总结
2016/04/27 Javascript
jQuery soColorPacker 网页拾色器
2016/06/22 Javascript
jQuery 获取页面li数组并删除不在数组中的key
2016/08/02 Javascript
Javascript 创建类并动态添加属性及方法的简单实现
2016/10/20 Javascript
微信小程序 时间格式化(util.formatTime(new Date))详解
2016/11/16 Javascript
React学习笔记之列表渲染示例详解
2017/08/22 Javascript
妙用缓存调用链实现JS方法的重载
2018/04/30 Javascript
vue 1.0 结合animate.css定义动画效果
2018/07/11 Javascript
Javascript中parseInt的正确使用方式
2018/10/17 Javascript
基于js Canvas实现二次贝塞尔曲线
2018/12/25 Javascript
Javascript执行流程细节原理解析
2020/05/14 Javascript
Python实现的手机号归属地相关信息查询功能示例
2017/06/08 Python
基于Python实现的ID3决策树功能示例
2018/01/02 Python
python使用筛选法计算小于给定数字的所有素数
2018/03/19 Python
打包python 加icon 去掉cmd黑窗口方法
2019/06/24 Python
python进度条显示-tqmd模块的实现示例
2020/08/23 Python
Python3.9新特性详解
2020/10/10 Python
python 获取剪切板内容的两种方法
2020/11/28 Python
python中Mako库实例用法
2020/12/31 Python
Booking.com德国:预订最好的酒店和住宿
2020/02/16 全球购物
中学生在校期间的自我评价分享
2013/11/13 职场文书
国贸专业的职业规划范文
2014/01/23 职场文书
企业安全生产承诺书
2014/05/22 职场文书
个人自查自纠材料
2014/10/14 职场文书
检讨书范文
2015/01/27 职场文书
2015年综治维稳工作总结
2015/04/07 职场文书
小学教学工作总结2015
2015/05/13 职场文书
健身房被搭讪?用python写了个小米计时器助人为乐
2021/06/08 Python
使用Redis实现实时排行榜功能
2021/07/02 Redis