python - 如何在 tkinter 列表框中的元素名称之前添加填充或删除所选项目下的下划线?
问题描述
在列表框中插入元素时,我想在它们的右侧添加一点填充。例如:
import tkinter as tk
from tkinter import *
root = Tk()
listbox = Listbox(root,width = 50)
listbox.pack(side=LEFT,fill=Y)
for ele in range(1,10):
listbox.insert(END,str(ele))
root.mainloop()
给出:
我想要这样的东西:
import tkinter as tk
from tkinter import *
root = Tk()
listbox = Listbox(root,width = 50)
listbox.pack(side=LEFT,fill=Y)
for ele in range(1,10):
listbox.insert(END," "+str(ele))
root.mainloop()
现在,我正在寻找一种内置方式来执行此操作,因为我需要添加额外的代码来删除这些空格listbox.get(listbox.curselection())
。或者删除所选项目下的下划线以便用户看不到我的肮脏快速修复的方法。
解决方案
把你Listbox
放在一个Frame
with 中ipadx
。
现场演示:reply.it
参考
import tkinter as tk
class App(tk.Tk):
def __init__(self):
super().__init__()
self.geometry('600x300+50+50')
self.configure(bg='blue')
frame = tk.Frame(self, bg='white')
frame.pack(side=tk.LEFT, ipadx=10)
listbox = tk.Listbox(frame, borderwidth=0, highlightthickness=0, bg=frame.cget('bg'), width=50)
listbox.pack(fill=tk.Y)
for ele in range(1,10):
listbox.insert(tk.END, str(ele))
if __name__ == '__main__':
App().mainloop()
推荐阅读
- c# - 如何修复“短语”不能为空字符串。参数名称:词组'?
- r - geom_map fill = 变量将每个值拆分为单独的颜色而不是渐变
- angular - 创建已弃用:从 v5 开始使用新签名 Injector.create(options)(弃用)
- python - 查找不包含特定数字的最长序列
- c# - 如何从 Google 登录令牌 WebApi 核心读取用户信息
- android - Android studio jarsigner:与密钥关联的密钥不是私钥
- php - 检查数组是否在php中具有除null以外的值的最佳方法是什么?
- c# - 无法识别的元素 unitTestProvider
- c++ - 如何在 C++ 中将函数作为参数传递
- javascript - 为什么 React 在提升状态时运行缓慢?