当前位置: 首页 > news >正文

网站弹出咨询这个怎么做国内手机搜索引擎十大排行

网站弹出咨询这个怎么做,国内手机搜索引擎十大排行,方案案例网站,足球彩票网站开发文章目录 一、说明二、几何时使用 Canvas 组件2.1 用法2.2 简单范例2.3 对象移动2.4 对象删除2.5 文字对象显示 三、画布和画布对象3.1 画布生成函数原型3.2 使用create_xxx()方法3.3 对参数**options的解释 一、说明 Canvas(画布)组件为 Tkinter 的图形…

文章目录

  • 一、说明
  • 二、几何时使用 Canvas 组件
    • 2.1 用法
    • 2.2 简单范例
    • 2.3 对象移动
    • 2.4 对象删除
    • 2.5 文字对象显示
  • 三、画布和画布对象
    • 3.1 画布生成函数原型
    • 3.2 使用create_xxx()方法
    • 3.3 对参数**options的解释

一、说明

Canvas(画布)组件为 Tkinter 的图形绘制提供了基础。Canvas 是一个高度灵活的组件,你可以用它绘制图形和图表,创建图形编辑器,并实现各种自定义的小部件。

在这里插入图片描述

二、几何时使用 Canvas 组件

    Canvas 是一个通用的组件,通常用于显示和编辑图形。你可以用它来绘制线段、圆形、多边形,甚至是绘制其它组件。

2.1 用法

    在 Canvas 组件上绘制对象,绘制的要点是:1)可以用 create_xxx() 的方法(xxx 表示对象类型,例如线段 line,矩形 rectangle,文本 text 等)。2)返回一个流水号ID: ID = create_xxx()

Canvas 组件支持对象:

arc(弧形、弦或扇形)
bitmap(内建的位图文件或 XBM 格式的文件)
image(BitmapImage 或 PhotoImage 的实例对象)
line(线)
oval(圆或椭圆形)
polygon(多边形)
rectangle(矩形)
text(文本)
window(组件)
其中,弦、扇形、椭圆形、圆形、多边形和矩形这些“封闭式”图形都是由轮廓线和填充颜色组成的,但都可以设置为透明(传入空字符串表示透明)。

2.2 简单范例

import tkinter as tkroot = tk.Tk()w = tk.Canvas(root, width =200, height = 100)
w.pack()#画一条黄色的横线
w.create_line(0, 50, 200, 50, fill = "yellow")
#画一条红色的竖线(虚线)
w.create_line(100, 0, 100, 100, fill = "red", dash = (4, 4))
#中间画一个蓝色的矩形
w.create_rectangle(50, 25, 150, 75, fill = "blue")root.mainloop()

2.3 对象移动

    注意,添加到 Canvas 上的对象会一直保留直着。如果你希望修改它们,你可以使用:
  • coords(),
  • itemconfig()
  • move()
    方法来移动画布上的对象
import tkinter as tk
root = tk.Tk()w = tk.Canvas(root, width =600, height = 600)
w.pack()line1 = w.create_line(0, 50, 200, 50, fill = "red")
# line2 = w.create_line(100, 0, 100, 100, fill = "red", dash = (4, 4))
# rect1 = w.create_rectangle(50, 25, 150, 75, fill = "blue")def move():for i in range(100):w.coords(line1, 0 , 50+i, 200 , 50+i)print(i)tk.Button(root, text = "删除全部", command = (lambda x = "all" : w.delete(x))).pack()
tk.Button(root, text = "移动全部", command =  move   ).pack()
root.mainloop()

2.4 对象删除

或者使用 delete() 方法来删除:

import tkinter as tk
root = tk.Tk()w = tk.Canvas(root, width =600, height = 600)
w.pack()line1 = w.create_line(0, 50, 200, 50, fill = "red")
line2 = w.create_line(100, 0, 100, 100, fill = "red", dash = (4, 4))
rect1 = w.create_rectangle(50, 25, 150, 75, fill = "blue")tk.Button(root, text = "删除全部", command = (lambda x = "all" : w.delete(x))).pack()root.mainloop()

2.5 文字对象显示

你还可以在 Canvas 上显示文本,使用的是 create_text() 方法,文字对象显示与几何体不同,表现在:

  • 坐标不同
  • 字体可选择
  • 需要字符串
import tkinter as tkroot = tk.Tk()w = tk.Canvas(root, width =200, height = 100)
w.pack()w.create_text(100, 50, text = "Python") 
root.mainloop()

三、画布和画布对象

画布和画布对象的关系是:

首先,画布是根,画布对象是叶,所有操作前提是必须有个画布。对对象的操作也必须经过画布。
画布和画布对象存在消息链接。类似于窗口和控件的关系。
画布上可以管理画布对象(增删改查)

3.1 画布生成函数原型

上文示例虽然用到画布生成函数,但是没有全面系统阐述,本节中详细阐述生成函数的参数。

函数原型

Canvas(master=None, **options) (class)

master – 父组件

**options – 组件选项,下方表格详细列举了各个选项的具体含义和用法:

选项含义
background指定 Canvas 的背景颜色
bg跟 background 一样
borderwidth指定 Canvas 的边框宽度
bd跟 borderwidth 一样
closeenough1. 指定一个距离,当鼠标与画布对象的距离小于该值时,鼠标被认为在画布对象上2. 该选项是一个浮点类型的值
confine1. 指定 Canvas 组件是否允许滚动超出 scrollregion 选项指定的范围2. 默认值是 True
cursor指定当鼠标在 Canvas 上飘过的时候的鼠标样式
height1. 指定 Canvas 的高度;2. 单位是像素
highlightbackground指定当 Canvas 没有获得焦点的时候高亮边框的颜色
highlightcolor指定当 Canvas 获得焦点的时候高亮边框的颜色
highlightthickness指定高亮边框的宽度
relief1. 指定 Canvas 的边框样式;2. 默认值是 “flat”;3. 其他可以选择的值是 “sunken”,“raised”,“groove” 和 “ridge”
scrollregion1. 指定 Canvas 可以被滚动的范围;2. 该选项的值是一个 4 元组(x1, y1, x2, y2)表示的矩形
selectbackground指定当画布对象被选中时的背景色
selectborderwidth指定当画布对象被选中时的边框宽度(选中边框)
selectforeground指定当画布对象被选中时的前景色
state1. 设置 Canvas 的状态:“normal” 或 “disabled”;2. 默认值是 “normal”;3. 注意:该值不会影响画布对象的状态
takefocus1. 指定使用 Tab 键可以将焦点移动到输入框中;2. 默认是开启的,可以将该选项设置为 False 避免焦点在此输入框中;
width1. 指定 Canvas 的宽度; 2. 单位是像素
xscrollcommand1. 与 scrollbar(滚动条)组件相关联(水平方向);2. 使用方法可以参考:Scrollbar 组件
xscrollincrement1. 该选项指定 Canvas 水平滚动的“步长”;2. 例如 ‘3c’ 表示 3 厘米,还可以选择的单位有 ‘i’(英寸),‘m’(毫米)和 ‘p’(DPI,大约是 ‘1i’ 等于 ‘72p’);3. 默认值是 0,表示可以水平滚动到任意位置
yscrollcommand1. 与 scrollbar(滚动条)组件相关联(垂直方向);2. 使用方法可以参考:Scrollbar 组件;
yscrollincrement1. 该选项指定 Canvas 垂直滚动的“步长”;2. 例如 ‘3c’ 表示 3 厘米,还可以选择的单位有 ‘i’(英寸),‘m’(毫米)和 ‘p’(DPI,大约是 ‘1i’ 等于 ‘72p’);3. 默认值是 0,表示可以水平滚动到任意位置

3.2 使用create_xxx()方法

使用 create_oval() 方法绘制椭圆形(或圆形),参数是指定一个限定矩形(Tkinter 会自动在这个矩形内绘制一个椭圆):

create_oval(bbox, **options)

– 根据限定矩形 bbox 绘制一个椭圆
– 新创建的画布对象位于显示列表的顶端
– 创建成功后返回该画布对象的 ID
– 下方表格列举了各个 options 选项的具体含义:

​选项含义**options
activedash当画布对象状态为 “active” 的时候,绘制虚线
activefill当画布对象状态为 “active” 的时候,填充颜色
activeoutline当画布对象状态为 “active” 的时候,绘制轮廓线
activeoutlinestipple当画布对象状态为 “active” 的时候,指定填充轮廓的位图
activestipple当画布对象状态为 “active” 的时候,指定填充的位图
activewidth当画布对象状态为 “active” 的时候,指定边框的宽度
dash1. 指定绘制虚线轮廓;2. 该选项值是一个整数元组,元组中的元素分别代表短线的长度和间隔;3. 例如 (3, 5) 代表 3 个像素的短线和 5 个像素的间隔
dashoffset1. 指定虚线轮廓开始的偏移位置’2. 例如当 dash=(5, 1, 2, 1),dashoffset=3,则从 2 开始画虚线
disableddash当画布对象状态为 “disabled” 的时候,绘制虚线
disabledfill当画布对象状态为 “disabled” 的时候,填充颜色
disabledoutline当画布对象状态为 “disabled” 的时候,绘制轮廓线
disabledoutlinestipple当画布对象状态为 “disabled” 的时候,指定填充轮廓的位图
disabledstipple当画布对象状态为 “disabled” 的时候,指定填充的位图
disabledwidth当画布对象状态为 “disabled” 的时候,指定边框的宽度
fill1. 指定填充的颜色;2. 空字符串表示透明
offset1. 指定当点画模式时填充位图的偏移;2. 该选项的值可以是:“x,y”, “#x,y”, “n”, “ne”, “e”, “se”, “s”, “sw”, “w”, “nw”, “center”
outline指定轮廓的颜色
outlineoffset1. 指定当点画模式绘制轮廓时位图的偏移;2. 该选项的值可以是:“x,y”, “#x,y”, “n”, “ne”, “e”, “se”, “s”, “sw”, “w”, “nw”, “center”
outlinestipple1. 当 outline 选项被设置时,该选项用于指定一个位图来填充边框;2. 默认值是空字符串,表示黑色
state1. 指定该画布对象的状态;2. 可以是 “normal”,“disabled”(不可用,不响应事件)和 “hidden”(隐藏);3. 默认值是 “normal”
stipple1. 指定一个位图用于填充;2. 默认值是空字符串,表示实心
tags为创建的画布对象添加标签
width指定边框的宽度

3.3 对参数**options的解释

**options:对多参数函数的引用,其参数的表格为字典。
*options:对多参数函数的引用,其参数的表格为列表。
函数定义:
def cunn1(**options)
def cunn2(*options)
函数调用:
cc = cunn1(bg=“#ffffff”)
cc = cunn2( “#ffffff”)
对比:
**options:不关注参数顺序,但必须提供参数名称;
*options: 参数严格按顺序输入,无法提供参数名称;

http://www.zhongyajixie.com/news/25292.html

相关文章:

  • 有关中国文明网联盟网站建设活动方案刚刚地震最新消息今天
  • wordpress导航站模板最新热点新闻事件
  • 简单5步_制作wordpress留言板手机优化软件排名
  • 网络服务器在哪个国家网络营销就是seo正确吗
  • 怎么给网站命名广东省人大常委会
  • 广东党员两学一做考试网站北京效果好的网站推广
  • 巩义做网站推广郑州技术支持seo
  • 网站做程序需要多久杭州网络优化公司排名
  • 怎么查询网站是哪家公司做的营销推广网
  • 如何建立个人免费网站免费关键词排名优化软件
  • 做网站做论坛赚钱吗如何搭建网站平台
  • 网站安装部署网络营销品牌有哪些
  • 企业网站建设方式百度指数是干嘛的
  • 怎么优化自己的网站百度在西安有分公司吗
  • 四川眉山今天疫情实时动态防控深圳网络seo推广
  • 外文网站字体今天的重要新闻
  • 网站建设技术seo站长工具查询
  • 做外汇门户网站网络营销策划书800字
  • 信息网站建设汇报建网站找谁
  • wordpress搜索页自定义苏州企业网站关键词优化
  • 用什么给网站做测试网址生成短链接
  • 大连做网站谁家售后好广告推广费用
  • 杭州模板建站代理网站宣传推广方案
  • 500人在线网站建设配置百度seo排名优化公司哪家强
  • 网站首页模块一键搭建网站
  • .tel域名能存放网站吗商丘seo推广
  • 哪里建设品牌网站快速排名优化seo
  • 营销型网站网站制作定制
  • 公司怎么建网站做推广最新的疫情最新消息
  • 有名的网站制作电话网站关键词优化