python交互式图形编程实例(一)
时间:2019-04-10
本文章向大家介绍python交互式图形编程实例(一),主要包括python交互式图形编程实例(一)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
本文实例为大家分享了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()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 使用R语言进行时间序列(arima,指数平滑)分析
- 用python多线程抓取网站图片,速度极快
- 偏最小二乘回归(PLSR)和主成分回归(PCR)
- R语言使用特征工程泰坦尼克号数据分析应用案例
- Rust FFI 编程 - Rust导出共享库04
- 使用结构化的标头字段改善HTTP
- c语言直接读写ini配置文件
- Rust FFI 编程 - Rust导出共享库03
- 【crossbeam系列】2 crossbeam-epoch:基于epoch的无锁“垃圾收集”
- java调用JNI总结
- 【Rust日报】2020-07-30 fixed_vec减少Rust数组冗余边界检查
- 我的小工具,用C和python实现远程读卡器,远程读写消费卡片
- c语言实现TCP的socket通信
- 多文件目录Makefile的写法
- 一个有趣的例子带你入门canvas