Python 3.x 如何将选框文本作为按钮文本?

Python 3.x 如何将选框文本作为按钮文本?,python-3.x,tkinter,Python 3.x,Tkinter,我希望当光标位于按钮上时,按钮的文本可以像选框文本一样移动。我正在使用Tkmacox库中的Marquee小部件,它具有在光标位于文本上方时移动文本的功能,但在这里,我希望按钮也具有相同的功能 如何移动按钮的文本,或者是否有其他方法?请帮忙 示例代码 从tkinter导入* 从Tkmacox导入* text=“”请将鼠标悬停在文本上方以移动它\ 仅当光标悬停在上方时,此文本才会移动\ 文本小部件。”“” root=Tk() 根['bg']='#333' m=选框(根,fg='#FEE715',bg

我希望当光标位于按钮上时,按钮的文本可以像选框文本一样移动。我正在使用Tkmacox库中的Marquee小部件,它具有在光标位于文本上方时移动文本的功能,但在这里,我希望按钮也具有相同的功能

如何移动按钮的文本,或者是否有其他方法?请帮忙

示例代码
从tkinter导入*
从Tkmacox导入*
text=“”请将鼠标悬停在文本上方以移动它\
仅当光标悬停在上方时,此文本才会移动\
文本小部件。”“”
root=Tk()
根['bg']='#333'
m=选框(根,fg='#FEE715',bg='#101820',text=text)
m、 包装(pady=10,padx=10)
按钮=按钮(根,无边界=1,背景='#101820',前景='#FEE715')
button.pack()
按钮绑定(“”,lambda:m.play())
按钮绑定(“”,lambda:m.stop(真))
root.mainloop()

我从的文档中选取了这个例子。提前感谢。

您可以通过在按钮内放置应选框的文本轻松完成此操作。 下面是执行此操作的代码

from tkinter import *
from tkmacosx import Marquee

text1 = """This text will move from right to left \
if does not fit the window."""
text2 = """Please hover over the text to move it. \
This text will move only if the cursor hovers over \
the text widget."""

root = Tk()
root['bg'] = '#333'
Marquee(root, bg='#FEE715', fg='#101820', text=text1).pack(pady=10)
button=Button(root, bg='#FEE715', fg='#101820', text=text1)
button.pack()
m = Marquee(button, fg='#FEE715', bg='#101820', text=text2)
m.pack(pady=(0,10), padx=10)
m.bind('<Button-1>',lambda e:print("Please try to upvote if the answer is right and tick as right answer . Thankyou"))
m.stop(True)
m.bind('<Enter>', lambda _: m.play())
m.bind('<Leave>', lambda _: m.stop())
root.mainloop()
从tkinter导入*
从Tkmacox导入字幕
text1=“”此文本将从右向左移动\
如果不适合窗口。”“”
text2=“”请将鼠标悬停在文本上方以移动它\
仅当光标悬停在上方时,此文本才会移动\
文本小部件。”“”
root=Tk()
根['bg']='#333'
选框(根,bg='#FEE715',fg='#101820',text=text1).pack(pady=10)
按钮=按钮(根,bg='#FEE715',fg='#101820',text=text1)
button.pack()
m=选框(按钮,前景='#FEE715',背景='#101820',文本=文本2)
m、 包装(pady=(0,10),padx=10)
m、 绑定(“”,lambda e:print(“如果答案正确,请尝试向上投票,并勾选为正确答案。谢谢”))
m、 停止(真)
m、 绑定(“”,lambda:m.play())
m、 绑定(“”,lambda:m.stop())
root.mainloop()

您可以通过在按钮内放置应选框的文本轻松完成此操作。 下面是执行此操作的代码

from tkinter import *
from tkmacosx import Marquee

text1 = """This text will move from right to left \
if does not fit the window."""
text2 = """Please hover over the text to move it. \
This text will move only if the cursor hovers over \
the text widget."""

root = Tk()
root['bg'] = '#333'
Marquee(root, bg='#FEE715', fg='#101820', text=text1).pack(pady=10)
button=Button(root, bg='#FEE715', fg='#101820', text=text1)
button.pack()
m = Marquee(button, fg='#FEE715', bg='#101820', text=text2)
m.pack(pady=(0,10), padx=10)
m.bind('<Button-1>',lambda e:print("Please try to upvote if the answer is right and tick as right answer . Thankyou"))
m.stop(True)
m.bind('<Enter>', lambda _: m.play())
m.bind('<Leave>', lambda _: m.stop())
root.mainloop()
从tkinter导入*
从Tkmacox导入字幕
text1=“”此文本将从右向左移动\
如果不适合窗口。”“”
text2=“”请将鼠标悬停在文本上方以移动它\
仅当光标悬停在上方时,此文本才会移动\
文本小部件。”“”
root=Tk()
根['bg']='#333'
选框(根,bg='#FEE715',fg='#101820',text=text1).pack(pady=10)
按钮=按钮(根,bg='#FEE715',fg='#101820',text=text1)
button.pack()
m=选框(按钮,前景='#FEE715',背景='#101820',文本=文本2)
m、 包装(pady=(0,10),padx=10)
m、 绑定(“”,lambda e:print(“如果答案正确,请尝试向上投票,并勾选为正确答案。谢谢”))
m、 停止(真)
m、 绑定(“”,lambda:m.play())
m、 绑定(“”,lambda:m.stop())
root.mainloop()

谢谢kshitiz,但在您的代码中,文本没有对齐,当按下按钮时,您无法完全看到按下的按钮,因为选框小部件挡住了去路。单击按钮时也会出现问题,原因与选框小部件挡住去路的原因相同。好的,谢谢您提供的信息。我会尽力解决并通知你。:)是的,很简单。只需用点击按钮(或其他任何事件)绑定该选框,您也可以在按钮中执行相同的操作。这样两者都能做同样的工作。如果答案正确,请尝试向上投票,并勾选为正确答案。希望它能很好地工作。:)谢谢kshitiz,但在您的代码中,文本没有对齐,当按下按钮时,您无法完全看到按下的按钮,因为选框小部件挡住了方向。此外,在单击按钮时也存在问题,原因与选框小部件挡住了方向相同。好的,谢谢您提供的信息。我会尽力解决并通知你。:)是的,很简单。只需用点击按钮(或其他任何事件)绑定该选框,您也可以在按钮中执行相同的操作。这样两者都能做同样的工作。如果答案正确,请尝试向上投票,并勾选为正确答案。希望它能很好地工作。:)您尝试的是不可能的,但是您可以创建一个函数循环,该函数循环将以类似于字幕文本的方式更改文本,您也可以从中获取引用。您尝试的是不可能的,但是您可以创建一个函数循环,该函数循环将以类似于字幕文本的方式更改文本,您也可以从中获取引用。