python - 如何防止 tkinter python 中的浮动小部件
问题描述
我的 tkinter 应用程序有以下 UI。我的问题是OptionsMenu
带有长文本的所有其他小部件都向右移动并最终超出框架。
我能想到的解决方案:1)将文本换行到下一行。
2)一种StringVar
可以将下拉列表的选定文本截断直到某些字符但不更改它存储的原始值(在下拉列表中选择)的方法。
3)停止让它们浮动并重叠在其他小部件上。
这是不稳定行为的图像。
这是我的代码:查找类别下拉菜单。
if finding_names != []:
finding_names.insert(0,'All')
finding_type_select.set(finding_names[0])
finding_type_dropdown = OptionMenu(tab3_project_reports,finding_type_select,*finding_names)
finding_type_dropdown.configure(font='helvetica 12')
finding_type_dropdown.grid(row=5, column=1,padx=10, pady=10,sticky=W+E+N+S)
finding_type_dropdown.grid_columnconfigure(0, weight=1)
我也尝试过使用,grid_columnconfigure
但我并没有真正看到任何变化。
我将不胜感激任何帮助。提前致谢。
解决方案
我在这里看到的唯一可能是问题(没有看到更多代码)是您如何使用grid_columnconfig()
. 您只能将列/行配置应用于容器。这些将是root
窗口、Toplevel()
窗口或Frame
. 您当前正在使用grid_columnconfigure()
,这将起作用,但请注意,您也可以不columnconfigure()
使用该grid_
部分。行也是如此。
而不是这个:
finding_type_dropdown.grid_columnconfigure(0, weight=1)
做这个:
tab3_project_reports.grid_columnconfigure(0, weight=1)
推荐阅读
- javascript - 如何反转对象内的所有数组
- excel - 具有多个条件和多个 csv 输出的 VLOOKUP
- c++ - 通过 [] 运算符访问 unordered_map 时发生错误
- sparql - 比较联合查询中的标签
- r - 使用循环改变多个列
- javascript - 无法从 React 组件中的 fetch 函数设置状态
- python-3.x - 根据给定的数据帧生成时间序列数据帧
- spring - 测试控制器方法时无法识别请求参数的自定义注释
- javascript - Javascript / jQuery - 检查输入 value1 > value2
- c++ - 如何找到数字的反对数(基数 2)?