我想制作可以剪切/复制/粘贴所选文本的菜单项(在菜单栏中,而不是在右键单击弹出窗口中)。等效的键盘命令已经可以使用,而无需我执行任何操作来启用它们。例如,我可以在输入框中输入文本,使用Control-X将其剪切,然后使用Control-C将其粘贴回(或其他地方)。我看到的关于该主题的帖子归结为针对单个小部件的剪切/复制/粘贴,但这已经有效。如何让菜单项激活它们?谢谢。编辑:需要明确的是,问题是:如何使用于剪切/复制的菜单项作用于在任何小部件中选择的任何文本如何让粘贴菜单项在文本光标所在的位置粘贴文本同样,执行此操作的关键命令(Control-x、Control-c、Control-v)
我有一个程序可以处理数据然后绘制结果。通常在Python中,绘图显示在新窗口中,但我想在同一个Tkinter窗口中显示绘图。我搜索并找到了这两个答案,PythonTkinterEmbedMatplotlibinGUI,和HowdoIrefreshamatplotlibplotinaTkinterwindow?.他们说我们应该首先制作一个Canvas,然后使用grid或pack将它放在窗口上。这是我第一次使用canvas,我应用了这个概念,这里是一个工作示例代码,frommatplotlib.backends.backend_tkaggimportFigureCanvasTkAgg__a
我正在制作一个简单的应用程序来练习python,我想在其中像记事本一样编写文本。但是,我不能让我的条目更大。我正在为此使用tkinter。有人知道如何使条目的高度变大吗?我试过这样的:f=Frame()f.pack()e=Entry(f,textvariable=1,height=20)e.pack()我知道这行不通,因为没有“高度”属性。但是,我看到有一个宽度属性。 最佳答案 听起来你在找tkinter.Text,它允许您调整小部件的高度和宽度。下面是一个简单的脚本来演示:fromtkinterimportText,Tkr=Tk(
我正在使用slider来更新我的可视化效果,但每次我移动slider拇指时都会发送命令updateValue,即使是中间值也是如此。相反,我只想在松开鼠标按钮且交互完成时触发它。self.slider=tk.Scale(self.leftFrame,from_=0,to=256,orient=tk.HORIZONTAL,command=updateValue)如何在交互结束时只触发一次函数? 最佳答案 现在这是一个相当古老的问题,但万一有人偶然发现这个特定问题,只需使用bind()函数和“ButtonRelease-1”事件,如下所
Python2.7(32位)Windows:我们正在试验Python2.7对主题Tkinter(ttk)的简单GUI支持,结果给我们留下了非常深刻的印象!!新主题支持似乎不足的一个领域是如何包装特定于操作系统的通用对话框。更正:换句话说,MessageBox和ColorChooser通用对话框具有“丑陋”的Win95风格block状按钮与主题(圆形/渐变)按钮通常显示在XP、Vista和Windows7下的这些常见对话框中。(我在所有3个平台上进行测试,结果相同,没有主题)。注意:filedialog通用对话框(askopenfilename、askopenfilenames、asks
我在17岁的时候使用Python的Tkinter模块设计了一个应用程序屏幕。有没有办法让这个应用程序适合较低分辨率的屏幕?我曾尝试在14"屏幕上运行它,但该应用不太适合。谢谢。 最佳答案 您可以获得屏幕分辨率,然后将它们输入您的root.geometry,这样:fromTkinkerimport*root=Tk()width,height=root.winfo_screenwidth(),root.winfo_screenheight()root.geometry('%dx%d+0+0'%(width,height))root.ma
我的基础程序从脚本GUI.py导入它的GUI界面old_stdout=sys.stdoutroot=Tk.Tk()root.title('Coursera-dl')root.geometry("345x230")app=GUI.Interface(root)app.mainloop()ifapp.button_press()==Trueandapp.return_data():data=app.return_data()main(data[0],data[1],data[2],data[3],data[4],data[5],data[6],data[7],data[8])sys.std
我正在尝试弄清楚如何在对话框窗口中对绑定(bind)命令进行单元测试。我正在尝试使用tkinter的event_generate.它没有按我预期的方式工作。对于这个StackOverflow问题,我设置了一些代码,只需一次调用event_generate.有时这条线有效,有时好像这条线根本不存在。对话框中的绑定(bind)__init__方法如下所示:self.bind('',#Print"BackSpaceeventgenerated."lambdaevent:print(event.keysym,'eventgenerated.'))对话框中的任何操作都会回调到它的终止方法(该对话
我想在Tkinter的TreeView中删除一行。我知道这个方法:defdelButton(self):x=main.tree.get_children()foriteminx:main.tree.delete(item)删除整棵树。但我只想删除一行。我该怎么做?此外,我还想知道如何编辑TreeView行。 最佳答案 您并没有删除整棵树,您只是删除了根项中的所有子项,因为您对迭代中的每个项都使用了删除。您可以使用if语句来确定您想要的项目,或者您可以使用selected_item=tree.selection()[0]获取所选项目并
考虑运行以下代码(请注意,这是演示问题的极其简化的版本):importmatplotlib.pyplotasplotfromtkinterimport*#Tkinterifyouronpython2defmain():fig=plot.figure(figsize=(16.8,8.0))root=Tk()w=Label(root,text="Closethisanditwillhang!")w.pack()root.mainloop()print('Codeneverreachesthispoint')if__name__=='__main__':main()关闭第一个窗口可以正常工作