我正在使用屏幕键盘为基于 tkinter 的 gui 键入数据。
我能够使用输入字段通过屏幕键盘输入、编辑数据,例如获取当前光标位置和字符串长度。
temp = self.entry_label.get()
length_string=len(temp)
cursor_position = self.entry_label.index(INSERT)
Run Code Online (Sandbox Code Playgroud)
但我希望对 Text 小部件做同样的事情。我可以使用get()方法及其长度获取 Text 小部件的文本,但无法获取当前鼠标光标位置。
temp=self.new_text.get(1.0, END)
cursor_position = self.new_text.index(INSERT)
Run Code Online (Sandbox Code Playgroud)
实际上它有效,我可以向该位置添加字符,但是在添加字符光标后返回到原始位置,即最后一个字符
嗨,我正在尝试使用ttk Combobox创建一个带有选项的下拉列表.这样做我可以配置传递给它的默认值的字体大小.但是当我点击箭头时,其他值的字体大小保持不变.我正在开发触摸屏的应用程序,所以我需要提供适当的大小.下面是示例代码,当我运行代码时,A的大小更大,按下单击箭头键,我看到其他值是默认大小.
#! /usr/bin/python
from Tkinter import *
import ttk
class Application:
def __init__(self, parent):
self.parent = parent
self.combo()
def combo(self):
self.box_value = StringVar()
self.box = ttk.Combobox(self.parent, textvariable=self.box_value,font=("Helvetica",20))
self.box['values'] = ('A', 'B', 'C')
self.box.current(0)
self.box.grid(column=0, row=0)
if __name__ == '__main__':
root = Tk()
app = Application(root)
root.mainloop()
Run Code Online (Sandbox Code Playgroud) 我按下按钮时尝试将Entry小部件的光标向左移动.我已经尝试过,我可以获得光标的当前位置,但我无法移动它.
我在网上搜索但没有找到任何有用的东西.如何在Entry小部件中移动光标位置?
#! /usr/bin/python
from Tkinter import *
class App(Frame):
def __init__(self,parent):
Frame.__init__(self,parent)
self.parent=parent
self.button = Button(self.parent, text="Shift_cursor_left", fg="red")
self.button.pack(side=LEFT)
self.entry_label=Entry(self.parent,width=10,bd="1",bg="cyan",font=("Helvetica",15),text="python",justify=RIGHT)
self.entry_label.pack()
self.entry_label.focus()
self.entry_label.insert(0,"Python")
self.button["command"]=self.shift_cursor()
def shift_cursor(self):
position = self.entry_label.index(INSERT)
print position
# self.entry_label.mark_set(INSERT,'1.2')
root=Tk()
app=App(root)
root.mainloop()
Run Code Online (Sandbox Code Playgroud)