用tkinter画布(Canvas)作图,五角星
1、画直线、虚线、矩形
from tkinter import *root=Tk()w=Canvas(root,width=200,height=100,background='white')#画布为白色,以示区别
w.pack()line1=w.create_line(0,50,200,50,fill='blue')#前两个数字代表一个点的坐标,后两个数字代表另一个点的坐标
line2=w.create_line(100,0,100,100,fill='red',dash=(4,4))
#dash代表虚线,2元组(a,b),a指定要画几个像素,b指定要跳过几个像素,依此重复,直至轮廓线画完。rect1=w.create_rectangle(50,23,150,75,fill='Gray')#前两个数字代表矩形左上角的坐标,后两个数代表矩形右下角的坐标mainloop()
结果显示:
2、对所画的图形进行修改和删除
from tkinter import *root=Tk()w=Canvas(root,width=200,height=100,background='white')
w.pack()line1=w.create_line(0,50,200,50,fill='blue')#前两个数字代表一个点的坐标,后两个数字代表另一个点的坐标
line2=w.create_line(100,0,100,100,fill='red',dash=(4,4))#dash代表虚线
rect1=w.create_rectangle(50,23,150,75,fill='Gray')#前两个数字代表矩形左上角的坐标,后两个数代表矩形右下角的坐标#修改
w.coords(line1,0,25,200,25)#移动到新的位置
w.itemconfig(rect1,fill='red')#主要是设置选项
w.delete(line2)#删除Button(root,text='删除全部',command=(lambda x=ALL:w.delete(x))).pack()mainloop()
结果显示:
3、画椭圆
from tkinter import *root=Tk()w=Canvas(root,width=200,height=100,background='white')
w.pack()w.create_rectangle(50,23,150,75,dash=(4,4))
w.create_oval(50,23,150,75,fill='pink')#绘制椭圆,会给出一个矩形的参数,然后进行限定填充
w.create_text(100,50,text='你好')mainloop()
4、绘制五角星
from tkinter import *
import math as mroot=Tk()w=Canvas(root,width=200,height=100,background='white')
w.pack()#提前设定画布边缘的中间点,总宽度为200,总高度为100
center_x=100
center_y=50
r=50#将五角星的五个顶点存入列表中,注意五个定点绘制的顺序
points=[# A顶点center_x - int(r*m.sin(2*m.pi/5)),center_y - int(r*m.cos(2*m.pi/5)),# C顶点center_x + int(r*m.sin(2*m.pi/5)),center_y - int(r*m.cos(2*m.pi/5)),# E顶点center_x - int(r*m.sin(m.pi/5)),center_y + int(r*m.cos(m.pi/5)),# B顶点center_x,center_y - r,# D顶点center_x + int(r*m.sin(m.pi/5)),center_y + int(r*m.cos(m.pi/5)),
]w.create_polygon(points,outline='',fill='red') #绘制多边形(坐标依次罗列,不用加括号,还有参数,fill,outline);mainloop()
图解:
r1=r*sin(2*pi/5),r2=r*cos(2*pi/5)
A(x1,y1):x1=center_x-r1,y1=center_y-r2
结果:
用tkinter画布(Canvas)作图,五角星相关推荐
- python编程画布_Python Tkinter 画布(Canvas)
Python Tkinter 画布(Canvas) Python Tkinter 画布(Canvas)组件和 html5 中的画布一样,都是用来绘图的.您可以将图形,文本,小部件或框架放置在画布上. ...
- tkinter笔记:画布canvas
1 整体框架 import tkinter as tkwindow = tk.Tk() #创建窗口window.title('my window') #窗口标题window.geometry('500 ...
- python菜鸟教程官网绘图-Python Tkinter 画布(Canvas)
Python Tkinter 画布(Canvas) Python Tkinter 画布(Canvas)组件和 html5 中的画布一样,都是用来绘图的.您可以将图形,文本,小部件或框架放置在画布上. ...
- python怎么在画布上写字_Python3 tkinter基础 Canvas create_text 在画布上添加文字
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda : 4.5.11 typesetting : Markdown ...
- python tkinter画布中使用turtle_[Tkinter canvas of Python]海龟图书馆,python,之,tkinter,画布,Turtle,库...
[python之tkinter画布] turtle绘图的基础知识: turtle.screensize(canvwidth=None, canvheight=None, bg=None) #参数分别为 ...
- Tkinter的Canvas组件
一.简介 Canvas组件,是一个可以绘制界面的组件, Canvas组件是通用的组件,通常用来显示或编辑图形,可以用来绘制直线.圆形.多边形,甚至是绘制其他组件 二.用Canvas绘制简单的直线与矩形 ...
- python tkinter进度条_在python tkinter中Canvas实现进度条显示的方法
如下所示: from tkinter import * import time #更新进度条函数 def change_schedule(now_schedule,all_schedule): can ...
- python怎样填充颜色_python – 使用颜色填充Tkinter画布对象之间的空间
Python 2.7.8,Windows 7 我已经将Tkinter画布小部件子类化,我添加了一个新方法来创建一个带有圆边的矩形. import Tkinter as tk class MyCanva ...
- python画布位置_如何调整tkinter画布的位置
在我的程序中,我想创建一个锚定在屏幕左上角的tkinter画布,但画布默认位于屏幕上的另一个位置.以下是这一情况的图像: 以下是我当前的代码:#!/usr/bin/python import tkin ...
- python画椭圆形_Python3 tkinter基础 Canvas create_rectangle 画虚边的矩形 create_oval 画椭圆形 圆形...
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda : 4.5.11 typesetting : Markdown ...
最新文章
- CStringArray序列化处理
- 【solr专题之二】配置文件:solr.xml solrConfig.xml schema.xml
- 【编程通识】PlantUML绘制时序图样例
- easy_Maze 梅津美治郎 寒假逆向生涯(16/100)
- HoloLens开发手记-凝视 Gaze
- 从0到1写RT-Thread内核——支持多优先级
- 工作32:get之前打印
- bind merge r 和join_R语言并行读取csv:地表最快csv合并方法
- task2 EDA探索性数据分析
- 012-centos6.5配置静态ip
- 还在头痛被黑客劫持? 五步帮你摆脱烦恼!
- sed用法详解(转载)
- SM6S系列TVS二级管 可通过ISO 7637-2 5a/5b测试
- 多传感器融合方法综述
- 分式加法JAVA程序_分式加减运算的八种技巧,有几种方法学校老师没讲过,记得收藏...
- 1094: 【基础】填词 【循环】
- 范畴论-一个单子(Monad)说白了不过就是自函子范畴上的一个幺半群而已
- 通过Python获取拉钩招聘网站的公司详细地址
- blender报错“RuntimeError: Operator bpy.ops.object.mode_set.poll() Context missing active object”
- 一文讲懂什么是 vlan、三层交换机、网关、DNS、子网掩码、MAC地址