标签: tkinter-entry

如何增加文本小部件中的字体大小?

当我使用以下代码增加字体大小时,它也会增加小部件的大小。是否可以通过保持文本小部件的大小不变来增加字体大小?谢谢你

  A11 = tkinter.Text(top, height=28, width=70,background = "#02e0a1")
  labelfont = ('times', 20, 'bold')
  A11.config(font = labelfont)
Run Code Online (Sandbox Code Playgroud)

python tkinter python-3.x tkinter-entry

3
推荐指数
1
解决办法
5541
查看次数

带有条目的 Tkinter 列表框

有没有办法让 Tkinter 列表框的项目成为条目小部件?结果是您可以动态修改列表框条目中的文本。如果您的列表框看起来像:

 --------
| Apples  |
| Pears   |
| Oranges |
 ---------
Run Code Online (Sandbox Code Playgroud)

那么您可能希望能够点击苹果并编写一些任意文本 - 然后您可以绑定 Enter 键,例如,根据新文本触发功能。

python listbox tkinter tkinter-entry

2
推荐指数
1
解决办法
9714
查看次数

在tkinter python中的输入框旁边打包标签

我有一个窗口,提示用户输入其日志文件的目录。但是,我的标签似乎贴在输入框的顶部。关于如何将它们并排包装的任何想法吗?

labelText=StringVar()

labelText.set("Enter directory of log files")

labelDir=Label(app,textvariable=labelText,height=4)

labelDir.pack()

directory=StringVar(None)

dirname=Entry(app,textvariable=directory,width=50)

dirname.pack()
Run Code Online (Sandbox Code Playgroud)

python label tkinter pack tkinter-entry

2
推荐指数
1
解决办法
2万
查看次数

为什么调用entry.get()会给我“无效的命令名”?

这是我的代码:

def ask(what,why):
    root=Tk()
    root.title(why)
    label=Label(root,text=what)
    label.pack()
    entry=Entry(root)
    entry.pack()
    button=Button(root,text='OK',command=root.destroy)
    button.pack()
    root.mainloop()
    return entry.get()
Run Code Online (Sandbox Code Playgroud)

当我调用代码时:

print(ask('Name:','Hello!'))
Run Code Online (Sandbox Code Playgroud)

我得到:

Traceback (most recent call last):
  File "C:\gui.py", line 16, in <module>
    ask('Name:','Hello!')
  File "C:\gui.py", line 15, in ask
    return entry.get()
  File "C:\Python34\lib\tkinter\__init__.py", line 2520, in get
    return self.tk.call(self._w, 'get')
_tkinter.TclError: invalid command name ".48148176"
Run Code Online (Sandbox Code Playgroud)

我在32位Windows 7上使用Python 3.4.3。

python user-interface tkinter tkinter-entry

2
推荐指数
1
解决办法
2945
查看次数

tkinter 入口高度

我试过

textEntry = Entry(root, width=115, textvariable=text, height=12)
Run Code Online (Sandbox Code Playgroud)

但我在高度方面遇到了错误。

然后我尝试使用Text小部件:

textEntry = Text(root, width=115, textvariable=text, height=12)
Run Code Online (Sandbox Code Playgroud)

但我遇到了一个错误textvariable=text

有什么方法可以调整 的高度Entry或 的变量Text吗?

python height tkinter tkinter-entry

2
推荐指数
1
解决办法
2万
查看次数

设置 tkinter 条目默认值

我正在开发一个脚本,它将在阅读 python 脚本后自动构建 GUI。我在获取我构建的 Entry 对象以接受默认值时遇到问题。

我向我的方法传递一个字典(arg),其中包含默认值和变量名。

def create_entry(self,
                 arg):

    if 'default' in arg.keys():
        var = StringVar(value=arg['default'])
    else:
        var = StringVar()
    box = ttk.Entry(self.mainframe, textvariable=var)
    box.grid(column=1, row=self.num, columnspan=2, sticky=(W, E))
    label= ttk.Label(self.mainframe, text=arg['name']).grid(column=0, row=self.num, sticky=E)

    return box, label
Run Code Online (Sandbox Code Playgroud)

我无法解释的是,类似的查找目录的方法效果很好......

def create_askdirectory(self,
                        arg):

    if 'default' in arg.keys():
        var = StringVar(value=arg['default'])
    else:
        var = StringVar()
    box = ttk.Entry(self.mainframe, textvariable=var)
    box.grid(column=1, row=self.num, columnspan=2, sticky=(W, E))

    def askdirectory():
        dirname = filedialog.askdirectory()
        if dirname:
            var.set(dirname)

    button = ttk.Button(self.mainframe, text='directory', command=askdirectory).grid(column=0, row=self.num)

    return box, button
Run Code Online (Sandbox Code Playgroud)

python default tkinter tkinter-entry

2
推荐指数
1
解决办法
3113
查看次数

Python Tkinter 输入板文本

我怎样才能填充入口小部件,使其不会在小部件的边界处开始书写?在视觉上,与入口小部件边框有一点空间。

我的进度:

entry_widget.bind('<FocusIn>', lambda f: entry_widget.insert(0, ' '))
Run Code Online (Sandbox Code Playgroud)

当用户单击小部件时,这会添加一个空白空间,但此解决方案存在多个问题:

  1. 当点击退出并重新点击时,它会在空白区域或用户填写的任何文本的顶部添加另一个空间。我考虑过清除条目小部件,FocusOut但这也会清除用户可能编写的所有文本。

  2. 用户可以删除插入的空间

  3. 获取内容时,开头有额外的空间。虽然这是一个小问题,可以通过删除内容的第一个字符来解决。

可能还有更多我没有考虑的问题。

我认为我的代码前进的方式很糟糕,因此我问是否有人知道如何“正确”填充条目小部件?

python tkinter pad tkinter-entry

2
推荐指数
2
解决办法
7466
查看次数

当文本大于框时,Tkinter Entry 使文本右对齐

我的 gui 中有一些 tk.Entry() 。条目内的文本始终右对齐。但一旦文本大于框,文本就会左对齐。

示例代码:

import tkinter as tk
root = tk.Tk()

small_text = "abc"
big_text = "abcdefghijklmnopqrstuvwxyz"
small_entry = tk.Entry(root, width=10, justify="right")
big_entry = tk.Entry(root, width=10, justify="right")
small_entry.insert(0, small_text)
big_entry.insert(0, big_text)
small_entry.pack()
big_entry.pack()

# what i want to see for big_entry:
wanna_see_text = "qrstuvwxyz"
wanna_see_entry = tk.Entry(root, width=10, justify="right")
wanna_see_entry.insert(0, wanna_see_text)
wanna_see_entry.pack()
root.mainloop()
Run Code Online (Sandbox Code Playgroud)

结果:

在此输入图像描述

第一个盒子就完美了 第二个框包含整个字母表,但它是左对齐的。我希望第二个盒子看起来像第三个盒子,即使它包含整个字母表,

感谢您的帮助 :)

python tkinter tkinter-entry

2
推荐指数
1
解决办法
4052
查看次数

如何突出显示 tkinter ENTRY 中预先输入的文本,以便用户可以直接键入(无需选择、删除)

noob 尝试使用 tkinter 创建一个简单的条目,因此预先输入的文本“在此处输入您的名字”被突出显示。然后用户只需输入他们的名字(或点击删除来删除内容...)是否有任何简单的参数/方法可以与 ENTRY 一起使用?

from tkinter import *
root = Tk()

lbl1 = Label ( root, text = "Let's Play together")
lbl2 = Label ( root, text = "What's your Name ? ")
lbl1.grid( row=0, column=0)
lbl2.grid (row=1, column=0)


nameplayer = Entry(root, width=25, )
nameplayer.insert(0,"Enter your name here ")
nameplayer.grid(row=2, column=0)
root.mainloop()
Run Code Online (Sandbox Code Playgroud)

谢谢 !!

python tkinter tkinter-entry

2
推荐指数
1
解决办法
3311
查看次数

如何更改 ttk.Entry 插入光标颜色?

我正在使用 Python3 和 tkinter 8.6 开发一个应用程序。其中一部分是一个相当复杂的对话框,它使用深色背景。随附的代码仅使用几个小部件来显示我无法工作的区域。除此之外,我的对话框使具有键盘焦点的小部件变得明显(通过突出显示的背景颜色,只需选项卡)。我已经尝试了所有可能的搜索字符串来寻找解决方案,但无济于事。事实证明 'insertwidth': '4' 确实有效。我想要的就是更改 ttkEntry 小部件插入点光标的颜色。我发现的建议答案似乎都不是解决方案。提前致谢。

    #!/usr/bin/env python3
import tkinter as tk
import tkinter.ttk as ttk    # ttk widgets use styles
import tkinter.font as tkfont

def app_exit():
    root.destroy()


root = tk.Tk()
root.geometry('400x50+400+100')
bg = '#2C2B3B'    # dark blue
hlbg = '#3F3D5C'  # dark blue a shade lighter
fg = 'white'
ebg = 'pink'   # Entry inserts
root.configure(background=bg)  # fills in around labels and entries
font14 = tkfont.Font(size=14)
font10 = tkfont.Font(size=10)
root.option_add('*TEntry*Font', font14)
ttstyle = ttk.Style() …
Run Code Online (Sandbox Code Playgroud)

color-scheme tkinter insertion python-3.x tkinter-entry

2
推荐指数
1
解决办法
1255
查看次数