Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在不使用画布的情况下绘制垂直线?_Python_Python 3.x_Tkinter_Line - Fatal编程技术网

Python 如何在不使用画布的情况下绘制垂直线?

Python 如何在不使用画布的情况下绘制垂直线?,python,python-3.x,tkinter,line,Python,Python 3.x,Tkinter,Line,我正在使用Python3并试图在tkinter中绘制一条垂直线,但如果不使用Canvas,我找不到任何绘制方法。我在谷歌上搜索了一下,但什么也没找到 这是我的密码: from tkinter import * master = Tk() master.geometry('200x346+200+100') mainloop() 如何解决这个问题 我正在使用Python3并试图在tkinter中绘制一条垂直线,但如果不使用Canvas,我找不到任何绘制的方法 不,除了使用画布,没有通用的方法在t

我正在使用Python3并试图在
tkinter
中绘制一条垂直线,但如果不使用
Canvas
,我找不到任何绘制方法。我在谷歌上搜索了一下,但什么也没找到

这是我的密码:

from tkinter import *
master = Tk()
master.geometry('200x346+200+100')
mainloop()
如何解决这个问题

我正在使用Python3并试图在tkinter中绘制一条垂直线,但如果不使用Canvas,我找不到任何绘制的方法

不,除了使用画布,没有通用的方法在tkinter中绘制

如果您只需要一条垂直线作为分隔符,则可以使用一个像素宽的帧。或者,使用
ttk.Separator
小部件

我正在使用Python3并试图在tkinter中绘制一条垂直线,但如果不使用Canvas,我找不到任何绘制的方法

不,除了使用画布,没有通用的方法在tkinter中绘制


如果您只需要一条垂直线作为分隔符,则可以使用一个像素宽的帧。或者,使用
ttk.Separator
小部件

这是一个直角三角形,它的非对角线是用
Frame
s绘制的:

try:                        # In order to be able to import tkinter for
    import tkinter as tk    # either in python 2 or in python 3
except ImportError:
    import Tkinter as tk


if __name__ == '__main__':
    root = tk.Tk()
    ratio = 16
    vertical_edge_len = 5
    horizontal_edge_len = 12
    hypotenuse = tk.Canvas(root, highlightthickness=0)
    hypotenuse.create_line(0, 0, ratio * horizontal_edge_len,
                                    ratio * vertical_edge_len, fill='green')
    vertical = tk.Frame(root, bg='red', height=ratio * vertical_edge_len,
                                                                    width=1)
    horizontal = tk.Frame(root, bg='blue', height=1,
                                            width=ratio * horizontal_edge_len)
    vertical.place(x=0, y=0)
    horizontal.place(x=0, y=ratio * vertical_edge_len)
    hypotenuse.place(x=0, y=0)
    root.mainloop()

这是一个直角三角形,其非对角线用
Frame
s绘制:

try:                        # In order to be able to import tkinter for
    import tkinter as tk    # either in python 2 or in python 3
except ImportError:
    import Tkinter as tk


if __name__ == '__main__':
    root = tk.Tk()
    ratio = 16
    vertical_edge_len = 5
    horizontal_edge_len = 12
    hypotenuse = tk.Canvas(root, highlightthickness=0)
    hypotenuse.create_line(0, 0, ratio * horizontal_edge_len,
                                    ratio * vertical_edge_len, fill='green')
    vertical = tk.Frame(root, bg='red', height=ratio * vertical_edge_len,
                                                                    width=1)
    horizontal = tk.Frame(root, bg='blue', height=1,
                                            width=ratio * horizontal_edge_len)
    vertical.place(x=0, y=0)
    horizontal.place(x=0, y=ratio * vertical_edge_len)
    hypotenuse.place(x=0, y=0)
    root.mainloop()

使用带有黑色背景的
框架如何?使用带有黑色背景的
框架如何?您使用的是
画布
斜边=tk.Canvas(root,highlightthickness=0)
@RobertJames是的,但这是一条对角线。您可以删除以斜边开始的每一行,并且仍然有没有画布绘制的垂直线和水平线。您使用的是画布:
斜边=tk.Canvas(root,highlightthickness=0)
@RobertJames是的,但这是一条对角线。您可以删除以
斜边开始的每一行
,并且仍然可以在没有
画布的情况下绘制垂直线和水平线