python - 为什么每当我运行此代码时,我的屏幕上都会出现一个白色矩形?
问题描述
from tkinter import *
window = Tk()
window.geometry('1000x1000')
window.configure(bg='black')
myCanvas = Canvas(window)
myCanvas.pack()
def create_circle(x, y, r, canvasName):
x0 = x - r
y0 = y - r
x1 = x + r
y1 = y + r
return canvasName.create_oval(x0, y0, x1, y1)
create_circle(100, 100, 50, myCanvas)
window.mainloop()
为什么那里有一个白色的矩形?我只是想在黑色画布上打印一个圆圈。
解决方案
有两个错误导致您的问题:
1.任何默认画布的颜色都是白色。
2.画布还有一个默认的高亮边框,也是白色的。
要解决这两个问题,您可以更改:
myCanvas = Canvas(window)
至
myCanvas = Canvas(window, bg='black',highlightthickness=0)
然后白色矩形将消失
如果您想保留突出显示的边框,您还可以使用更改边框的颜色highlightbackground="black"
或任何其他所需的颜色。
最后,如果您想更改圆形的颜色,因为圆形融入了画布颜色outline="white"
,请在制作椭圆时添加:
推荐阅读
- node.js - NodeJS客户端上的Redis错误:错误:getaddrinfo EAI_AGAIN
- typescript - 将 CompositeScreenProps 合并到 BottomTabScreenProps
- r - 从 R 中的两个数据帧中找到加权平均值的最佳方法?
- python - 使用 Python 的稳定 ABI 识别包
- python - 获取类中特定类型的所有实例
- html - CSS 不是选择器和 :hover
- php - 您已选择打开 application/octet-stream - wordpress
- javascript - 开玩笑比较 json 输出而不写入文件
- python - PCA 解释的方差在数据排列上是相同的
- python - 是否应该避免在自己的命名空间中命名 Python 模块?