gpt4 book ai didi

python - 是否可以在 tkinter 中使用垂直方向的按钮?

转载 作者:太空狗 更新时间:2023-10-30 01:20:37 25 4
gpt4 key购买 nike

是否可以垂直放置 tk.Buttonttk.Button?好像以某种方式定位 tk.Scrollbar self.scrlbr = tk.Scrollbar(master, orient = vertical)

已尝试 tk.Button(*args).pack(fill = tk.Y),但它没有提供预期的效果 - 按钮仍然是水平方向的。

在手册页中没有找到任何内容,但也许有一些不直接的方法?

最佳答案

按钮小部件不提供此选项,但如果需要,您可以模拟按钮小部件以获得效果。如前所述,一种方法是使用包含旋转文本的图像。根据您的主题,您还可以使用 canvas 创建一个按钮,它允许您使用 angle 选项旋转绘制在其自身上的文本。这在 Windows 主题上看起来很奇怪,但在使用的小部件是 Tk(而不是 ttk 小部件)或 ttk 的情况下可能看起来很正常,前提是主题是使用 Tk 绘制元素的主题(unix 上的默认设置)。

它的外观的粗略演示:

enter image description here

import tkinter as tk
import tkinter.font as tkfont
main = tk.Tk()
font = tkfont.nametofont("TkDefaultFont")
label = "Click Me"
height = font.measure(label) + 4
width = font.metrics()['linespace'] + 4
canvas = tk.Canvas(main, height=height, width=width, background="SystemButtonFace", borderwidth=2, relief="raised")
canvas.create_text((4, 4), angle="90", anchor="ne", text=label, fill="SystemButtonText", font=font)
canvas.bind("<ButtonPress-1>", lambda ev: ev.widget.configure(relief="sunken"))
canvas.bind("<ButtonRelease-1>", lambda ev: ev.widget.configure(relief="raised"))
canvas.place(x=5, y=height + 10)
main.mainloop()

关于python - 是否可以在 tkinter 中使用垂直方向的按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38008389/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com