python中tkinter圆弧_Tkinter(Python)中弧的选项
当然可以。在
像这样:# -*- coding: utf-8 -*-
from Tkinter import *
from random import randint
root = Tk()
can = Canvas(root,width=400.5,height=400,bg="#CCCCCC",highlightbackground="#006699")
can.place(x=10,y=10)
"""
Sec = SECTOR
|Sec-1 Sec-2 |
| |
| |
| |
| |
|Sec-4 Sec-3 |
"""
deviation = 2 #NEED SHOW ALL ARCs IN CANVAS(FULL)
size = 5 #MEAN WIDTH(BORDER THICKNES)
def setARC(radius,sector,deviation,size):
w,h = can.config("width")[-1],can.config("height")[-1]
startAngle = 0
position = list()
if sector == 1 :
positions = 0+deviation,radius+size+deviation,radius+size+deviation,0+deviation
startAngle = 90
elif sector == 2 :
positions = int(w)-radius-size-deviation,deviation,int(w)-deviation,radius+deviation+size
elif sector == 3:
positions = int(w)-radius-size-deviation,int(h)-deviation,int(w)-deviation,int(h)-radius-deviation-size
startAngle = 270
elif sector == 4:
positions = deviation,int(h)-radius-deviation-size,radius+deviation+size,int(h)-deviation
startAngle = 180
can.create_arc(positions,start=startAngle,extent=90,outline="black",width=size,style=ARC,tags="Sector-"+str(sector))
sizer.set(radius)
def change(e):
w,h = int(can.config("width")[-1]),int(can.config("height")[-1])
radius = sizer.get()
for x in can.find_all():
wrd = can.gettags(x)[0]
if wrd.startswith("Sector-") :
position = list()
if wrd[-1] == "1":
position = [0+deviation,radius+size+deviation,radius+size+deviation,0+deviation]
elif wrd[-1] == "2":
position = [w-radius-size-deviation,deviation,w-deviation,radius+deviation+size]
elif wrd[-1] == "3":
position = [w-radius-size-deviation,h-deviation,w-deviation,h-radius-deviation-size]
elif wrd[-1] == "4":
position = [deviation,h-radius-deviation-size,radius+deviation+size,h-deviation]
can.coords(x, tuple(position))
Rcolor = (min(w,h)*255)/(radius if radius > 0 else 1)
outColor = "#%02X%02X%02X"%tuple(randint(0,255) for i in range(3))
can.itemconfig(x,outline=outColor)
sizer = Scale(root, from_=0, to=min(can.config("width")[-1],can.config("height")[-1]), orient=VERTICAL,command=change)
sizer.place(x=10+int(can.place_info()["x"])+int(can.config("width")[-1]),y=int(can.place_info()["y"]),\
height=min(int(can.config("width")[-1]),int(can.config("height")[-1])))
sizer.set(200)
for i in range(1,5,1):
setARC(200,i,2,5)
root.geometry("800x450+50+50")
root.config(bg="#006699")
root.mainloop()
考虑的重点是确定项目的方面大小。在
w,h = int(can.config("width")[-1]),int(can.config("height")[-1])
您还必须向canvas元素添加标记。在
can.create_arc(positions,start=startAngle,extent=90,outline="black",width=size,style=ARC,tags="Sector-"+str(sector))
python中tkinter圆弧_Tkinter(Python)中弧的选项相关推荐
- python中组合框_Tkinter Python中的多个组合框
我试图用一个配置文件"文件配置.ini文件数据是: 优先级1=正常:farty-blobble-fx.wav:2 优先权8=Reclamacao:buzzy-blop.wav:3 优先级3= ...
- python的gui库_tkinter——python的GUI标准库
-- coding:utf-8 -- import tkinter as tk window=tk.Tk()#一个窗口对象 window.title("tkinter")#窗口名称 ...
- python tkinter手册_tkinter 中文文档
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! __author__=python importtkinterastk clas ...
- python tkinter库、添加gui界面_使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二)...
使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二),创建一个,界面,布局,文件,路径 使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二) ...
- 不是python中用于开发用户界面的第三方库-python界面 | Tkinter图形界面开发库
0 写在前面 未经允许,不得转载,谢谢~~ 毕设要在现有的基础上做一个可视化的界面,所以趁机也学习一波如何用python实现图形界面的开发. 本文主要学习并整理了: 简要介绍用于python图形界面开 ...
- 使用tkinter模块在Python中进行GUI编程
GUI (Graphical User Interface): GUI(图形用户界面): GUI is a simple application which helps the user to int ...
- 用python的tkinter做游戏(八)—— 实现图片在tkinter中自适应大小(自动匹配窗口)
用python的tkinter做游戏 系列: 用python自带的tkinter做游戏(一)-- 贪吃蛇 篇 用python自带的tkinter做游戏(二)-- 俄罗斯方块 篇 用python自带的t ...
- python中tkinter较完整的鼠标样式cursor值
什么是cursor cursor是指(计算机荧光屏上的)光标,游标; 在tkinter中的Frame, Label, Button, Radiobutton, Checkbutton, Entry, ...
- Python中Tkinter模块的Canvas控件绘制jpg图片到指定区域
准备在Python的Tkinter模块中用Canvas绘制如下形式的工艺卡片(图片来自参考文献5,原图来自参考文献4),但是在绘制图形时遇到两个问题,特此记录如下: jpg图片无法读取 Can ...
最新文章
- 资质申报 - 系统集成企业资质等级评定条件(2012年修定版)
- Drawable Resource 之旅(一):BitmapDrawable 详解
- C++知识点25——使用C++标准库(容器适配器stack、queue、priority_queue)
- reverse mapping checking getaddrinfo for bogon failed – POSSIBLE BREAK-IN ATTEMPT! 错误
- DLL回调EXE里的函数
- android+4.4+稳定性,新系统新UI!台电A10h四核安卓4.4.2性能测试
- 数据结构(二)之算法基础
- java视窗_java-预览窗口(如Windows 7任务栏显示已打开的...
- HDU1174(空间点到直线的距离,用叉积)
- 软件工程导论 统一建模语言UML概述
- linux计划任务与日志管理(日志分割/切割)
- oracle数据库如何写翻页_ORACLE翻页SQL语句
- 读取SD卡文件夹下的MP3文件和播放MP3文件
- Git 的下载、安装、本地环境配置教程
- Matlab图例legend换行
- 三维分子图的球面信息传递
- 【shiro基础】springboot + shiro整合thymeleaf
- 分享9款“神器级”的网站,你值得拥有!不收藏简直是巨大的损失
- excel怎么设置自动计算_EXCEL内输入起始时间,如何自动计算小时时间差?
- webpack Uncaught ReferenceError: Swiper is not defined
热门文章
- Ubuntu恢复默认的字体
- 决策树算法(四)——选取最佳特征划分数据集
- R语言与数据分析(1) 数据分析流程、数据挖掘、数据可视化
- 时玉:微生物地理分布的分析方法与技术
- 多快好省的宏基因组研究技巧
- QIIME 2用户文档. 17鉴定和过滤嵌合体序列q2-vsearch(2019.7)
- Nat. Ecol. Evol.:不想当化学家的物理学家不是好的生物学家
- PNAS:水稻微生物组
- Error in install.packages : cannot remove prior installation of package
- 主题模型简介(Topic Models)