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 18 Python
Python的Flask框架与数据库连接的教程
Apr 20 Python
python实现按行切分文本文件的方法
Apr 18 Python
Python模拟三级菜单效果
Sep 11 Python
深入理解Django中内置的用户认证
Oct 06 Python
Python入门之三角函数atan2()函数详解
Nov 08 Python
python3写的简单本地文件上传服务器实例
Jun 04 Python
对Python subprocess.Popen子进程管道阻塞详解
Oct 29 Python
Python设计模式之外观模式实例详解
Jan 17 Python
详解Python Matplot中文显示完美解决方案
Mar 07 Python
解决安装pyqt5之后无法打开spyder的问题
Dec 13 Python
Spy++的使用方法及下载教程
Jan 29 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 开发工具
2006/12/06 PHP
基于curl数据采集之单页面并行采集函数get_htmls的使用
2013/04/28 PHP
php parse_str() 函数的定义和用法
2016/05/23 PHP
Smarty模板常见的简单应用分析
2016/11/15 PHP
Zend Framework入门教程之Zend_Session会话操作详解
2016/12/08 PHP
PHP中危险的file_put_contents函数详解
2017/11/04 PHP
JavaScript中常见陷阱小结
2010/04/27 Javascript
JavaScript的常见兼容问题及相关解决方法(chrome/IE/firefox)
2013/12/31 Javascript
jquery禁止回车触发表单提交
2014/12/12 Javascript
详解在vue-cli项目中安装node-sass
2017/06/21 Javascript
JS实现页面内跳转的简单代码
2017/09/03 Javascript
JS实现的简单折叠展开动画效果示例
2018/04/28 Javascript
详解JSON Web Token 入门教程
2018/07/30 Javascript
在微信小程序中使用mqtt服务的方法
2019/12/13 Javascript
vue router-link 默认a标签去除下划线的实现
2020/11/06 Javascript
一个基于flask的web应用诞生 记录用户账户登录状态(6)
2017/04/11 Python
使用Scrapy爬取动态数据
2018/10/21 Python
python对列进行平移变换的方法(shift)
2019/01/10 Python
python实现坦克大战游戏 附详细注释
2020/03/27 Python
Django网络框架之创建虚拟开发环境操作示例
2019/06/06 Python
django 信号调度机制详解
2019/07/19 Python
Python要如何实现列表排序的几种方法
2020/02/21 Python
python3.8.3安装教程及环境配置的详细教程(64-bit)
2020/11/28 Python
python实现经纬度采样的示例代码
2020/12/10 Python
英国领先的维生素和营养补充剂直接供应商:Healthspan
2019/04/22 全球购物
学期自我鉴定范文
2013/10/01 职场文书
创业大赛策划书
2014/03/01 职场文书
美丽乡村建设实施方案
2014/03/23 职场文书
放飞梦想演讲稿
2014/05/05 职场文书
国际贸易实务实训报告
2014/11/05 职场文书
2015年城管个人工作总结范文
2015/04/20 职场文书
2015年社区综治工作总结
2015/04/21 职场文书
工作收入证明范本
2015/06/12 职场文书
幼儿园大班教育随笔
2015/08/14 职场文书
学雷锋广播稿大全
2015/08/19 职场文书
优秀党员主要事迹材料
2015/11/04 职场文书