目录

前言

由于最近想在tkinter里内嵌matplotlib,由于用到tkinter里的carves控件,先学习一下。

carves就是画布的意思,用于画图。

(一)carves创建方法

(1)说明:

与其他的控件一样,carves的创建方也是在tk里。

(2)源代码:

import tkinter as tk

win = tk.Tk()
win.geometry("600x400+200+100") # 创建画布
canvas = tk.Canvas(win, bg="orange")
canvas.place(relx=0.05, rely=0.05, relwidth=0.9, relheight=0.9) win.mainloop()

(3)输出效果:

(二)carves的画图方法

(1)说明:

方法 说明 参数
.create_line() 画线 (起始坐标),(终点坐标),width=线宽,fill=颜色
.create_arc() 画圆弧 (起始坐标),(终点坐标),width=线宽,fill=颜色
.create_rectangle() 画矩形 (起始坐标),(终点坐标),fill='填充的颜色, outline=边框的颜色
.create_oval() 画椭圆 (外接矩阵的四个坐标),fill='填充的颜色, outline=边框的颜色
.create_polygon() 画多边形 d多个点的坐标,fill='填充的颜色, outline=边框的颜色
.create_text() 显示文字 text="文字"
.delete() 删除对象 创建线返回的对象

(2)源代码:

import tkinter as tk

win = tk.Tk()
win.geometry("600x400+200+100")
canvas = tk.Canvas(win, bg="orange")
canvas.place(relx=0.05, rely=0.05, relwidth=0.9, relheight=0.9) # 画一条实线, fill:填充的颜色
line1 = canvas.create_line((0, 0), (100, 100), width=5, fill="red") # 画一条虚线 dash=(1, 1)
canvas.create_line((200, 200), (200, 300), width=5, fill="green", dash=(1, 1)) # 画一个圆弧
canvas.create_arc((100, 100), (200, 200), width=5) # 显示文字
canvas.create_text((300, 100), text="文字", font=("微软雅黑", 18)) # 绘制矩形, outline:线条颜色
canvas.create_rectangle(50, 25, 150, 75, fill='blue', outline='green', width=5) # 绘制椭圆
canvas.create_oval(200, 25, 350, 75, fill='pink', outline='green', width=5) # 绘制多边形
point = [(100, 100), (100, 200), (200, 300), (300, 400), (400, 500)]
canvas.create_polygon(point, outline='green', fill='yellow') def dele_line():
canvas.delete(line1) btn = tk.Button(canvas, text="删除", command=dele_line)
btn.place(relx=0.4, rely=0.8) win.mainloop()

(3)输出效果:

作者:Mark

日期:2019/02/13 周三

tkinter学习系列之(八) Canvas控件的更多相关文章

  1. WP8.1学习系列(第二十章)——添加控件和处理事件

    先决条件 添加控件 设置控件的名称 设置控件属性 创建事件处理程序 新控件 总结 相关主题 通过使用如按钮.文本框和组合框等控件,你可以创建应用的 UI. 下面将显示如何将控件添加到应用.处理控件时, ...

  2. WPF学习系列之五(WPF控件)

    控件:    1.内容控件------这些控件能够包含嵌套的元素,为它们提供几乎无限的显示能力.内容控件包括Lable,Button 以及ToolTip类. 内容控件是更特殊的控件类型,它们可以包含( ...

  3. WP8.1学习系列(第十章)——中心控件Hub设计指南

    Windows Phone 应用商店应用中的中心控件指南   在本文中 说明 示例 用法指南 设计指南 相关主题 重要的 API Hub (XAML) HubSection (XAML) 说明 中心控 ...

  4. 【Silverlight】Bing Maps学习系列(八):使用Bing Maps Silverlight Control加载自己部署的Google Maps

    [Silverlight]Bing Maps学习系列(八):使用Bing Maps Silverlight Control加载自己部署的Google Maps 上个月微软必应地图(Bing Maps) ...

  5. 《Dotnet9》系列-开源C# WPF控件库3《HandyControl》强力推荐

    大家好,我是Dotnet9小编,一个从事dotnet开发8年+的程序员.我最近开始写dotnet分享文章,希望能让更多人看到dotnet的发展,了解更多dotnet技术,帮助dotnet程序员应用do ...

  6. React-Native的基本控件属性方法,对React-Native的学习,从熟悉基本控件开始。

    对React-Native的学习,从熟悉基本控件开始. View 属性方法 序号 名称 属性Or方法 类型 说明 1 accessibilityLabel 属性 string   2 accessib ...

  7. Python学习系列(八)( 面向对象基础)

     Python学习系列(八)( 面向对象基础) Python学习系列(七)( 数据库编程) 一,面向对象 1,域:属于一个对象或类的变量.有两种类型,即实例变量—属于每个实例/类的对象:类变量—属于类 ...

  8. 《Dotnet9》系列-开源C# Winform控件库强力推荐

    时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...

  9. 《Dotnet9》系列-开源C# WPF控件库强力推荐

    时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...

随机推荐

  1. MVC笔记--特性路由

    物性路由:将路由和控制器放在一起,这样更简单方便,还可以处理复杂的路由场景 传统路由:集中.强制.基于代码风格来定义的. 每个MVC应用程序都需要路由来定义自己的处理请求方式,路由是MVC是应用程序的 ...

  2. springboot将项目源代码打包

    springboot将项目源代码打包并发布到仓库 如果我们有一些类和方法是公用的,可以打开公用包,而这时使用默认的build方式都所有依赖都打进去,而且你当然项目的文件虽然在包里,但却在boot-in ...

  3. 手把手教你学会用Spring AOP

    用了Spring很长时间了,一直想写些AOP的东西,但一直没有空闲,直到现在项目稍微进入正轨了,才赶紧写写.废话不多说,先从AOP入门开始,后面再介绍AOP的原理(JDK动态代码和CGLIB动态代码的 ...

  4. Django使用Channels实现WebSocket--上篇

    WebSocket - 开启通往新世界的大门 WebSocket是什么? WebSocket是一种在单个TCP连接上进行全双工通讯的协议.WebSocket允许服务端主动向客户端推送数据.在WebSo ...

  5. 自己动手实现java数据结构(五)哈希表

    1.哈希表介绍 前面我们已经介绍了许多类型的数据结构.在想要查询容器内特定元素时,有序向量使得我们能使用二分查找法进行精确的查询((O(logN)对数复杂度,很高效). 可人类总是不知满足,依然在寻求 ...

  6. 前端错误监控,sentry入门配置详细教程

    一.前言 最近经理说要把公司项目结合sentry用起来,然后组长不想做,老员工也不想做,分配任务就这么分配给我了,很荣幸接锅,摸索了几天,了解了一些基本配置,深一点的玩法可能还得实践一段时间,这里对于 ...

  7. 在 浏览器中调用外接设备— —手写板 【win10 x64 手动注册ocx控件的方法】

    PPAXSignToolSDK.ocx 浏览器下使用手写板时调用的控件,使用前必须先注册,,不然浏览器下版本无法正常工作. ocx 控件在安装包运行时会自动注册,如果安装包没有注册成功,需要进行手动注 ...

  8. centos7使用yum安装mysql 【转】

    转自:http://blog.csdn.net/eclothy/article/details/52733891 使用: yum install mariadb*    (注意,带星号) 安装好后,启 ...

  9. 设计模式-享元模式(FlyWeight)

    一.概念 享元模式是对象的结构模式,它以共享的方式高效的支持大量的细粒度对象,减少对象的数量,并达到节约内存的目的. 享元对象能够做到共享的关键,主要是区分了内部状态和外部状态,内部状态是对象是在建立 ...

  10. Python 多线程、多进程 (三)之 线程进程对比、多进程

    Python 多线程.多进程 (一)之 源码执行流程.GIL Python 多线程.多进程 (二)之 多线程.同步.通信 Python 多线程.多进程 (三)之 线程进程对比.多线程 一.多线程与多进 ...