- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在从日志文件中填充 pySimpleGui 表。大多数日志是单行,但存在一些多行文本。布局中的表格定义如下[sg.Table(key="mainTable",values=data, headings=header_list, display_row_numbers=False,col_widths=size_list,auto_size_columns=False, num_rows=40)]
当前多行文本与下一行文本重叠。有没有办法在单个单元格中显示多行文本或文本裁剪是唯一的方法?
最佳答案
如果您查看他们的 QT Table或 Web Table接受 auto_size_columns
并在表中忽略它,特别是在 QT not using it for Table but for Tree 中和 Web its commented !
检查他们允许的选项并查看我们是否可以申请后setWordWrap
直接在 QTTable 或 Widget 上的任何类似内容上,甚至很难找到它。
但另一方面,他们确实有很多示例可以自定义构建表格格式:Demo_Table_Simulation.py
这是我尝试生成自定义表的内容:
#!/usr/bin/env python
import PySimpleGUI as sg
import csv
import math
# Show CSV data in Table
sg.theme('Dark Red')
def table_example():
filename = sg.popup_get_file('addresses.csv', no_window=True, file_types=(("CSV Files","*.csv"),))
# --- populate table with file contents --- #
if filename == '':
return
data = []
header_list = []
button = sg.popup_yes_no('Does this file have column names already?')
if filename is not None:
with open(filename, "r") as infile:
reader = csv.reader(infile)
if button == 'Yes':
header_list = next(reader)
try:
data = list(reader) # read everything else into a list of rows
if button == 'No':
header_list = ['column' + str(x) for x in range(len(data[0]))]
except:
sg.popup_error('Error reading file')
return
sg.set_options(element_padding=(0, 0))
values = []
for row in data:
# Calculate the size of sg.Text based on the length of the text greater than some size
values.append([sg.Text(i, size=(15, math.ceil(1 if len(i) <= 15 else len(i)/15))) for i in row])
# Add a horizontal separator with length and calculate the width
length=15*len(values[0])
values.append([sg.Text('_'*length)])
input_rows = [[sg.Input(size=(15,1), pad=(0,0)) for col in range(4)] for row in range(10)]
layout = values
window = sg.Window('Table', layout, grab_anywhere=False)
event, values = window.read()
window.close()
table_example()
输出如下所示:
关于python - pysimplegui 表多行文本处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64812348/
我想使用 PySimpleGui 从列表动态创建单选按钮,但我在布局代码中插入循环的努力正在捕获语法错误。这可以通过 API 来完成还是需要使用 tkinter 来完成?我的列表是通过网络驱动器的目标
我制作了一个简单的 Python3 程序,它使用 PySimpleGUI 创建一个 Windows-GUI 程序。该程序还包含一张图片 CAESAR.png,它与我的 python 代码位于同一文件夹
只是试图显示一个简单的窗口,我收到此错误代码: AttributeError:模块“PySimpleGUI”没有属性“Popup” import PySimpleGUI as sg sg.Popup(
PySimpleGUI 的新手。 我有一个多行输入框: layout1 = [[sg.Multiline(size=(45,5),key='-IN-')],... window1 =
前一阵,我在为朋友编写一个源代码监控程序的时候,发现了一个 Python 领域非常简单好用的图形界面库。 说起图形界面库,你可能会想到 TkInter、PyQt、PyGUI 等流行的图形界面库,我
PySimpleGUI python 库是否支持 RTL 对齐? 我想从右到左对齐阿拉伯文本: 代码: sg.Text("احب الطعام", font='12', size=(15, 1), b
我正在创建一个文本框,如下所示: sg.Text(size=(57, 10), background_color='white', text_color='red',
我正在使用 pysimplegui 构建一个简单的 GUI,并希望右对齐框架内的按钮。我找到了有关如何使用文本而不是按钮执行此操作的详细信息。 例如,我希望下面的按钮能够捕捉到框架的右侧,并且周围有凹
我正在尝试创建一个大时钟作为图形用户界面测试项目。该窗口应该在没有任何输入的情况下运行,并且只显示时间,同时每秒更新 10 次。无论我到目前为止尝试了什么,我都无法让文本更新到我当前的时间。 这是我的
我正在从日志文件中填充 pySimpleGui 表。大多数日志是单行,但存在一些多行文本。布局中的表格定义如下[sg.Table(key="mainTable",values=data, headin
我正在开发一个图像查看器,但我注意到在图像查看器中,当要显示的链接太长时,它会被切断。我怎样才能修改这段代码,以便如果字符串太长,它会在新行上打印它。我正在遵循指南,因此您可以查看 https://r
我正在尝试仅浏览 Excel 文件,但如何限制 PySimpleGUI 浏览按钮中的文件类型。 最佳答案 layout = [[sg.In() ,sg.FileBrowse(file_types=(
我想使用 pysimplegui 打印类似的输出 import PySimpleGUI as sg print("The age of the universe is", age_of_univers
import PySimpleGUI as sg import os layout = [[sg.Text('Velg mappe som skal tas backup av og hvor
感谢您阅读本文。 我正在制作一个简单的动画,该动画基于 PysimpleGUI 食谱中的两个示例之一。当然,附加的代码并没有做任何事情。我查看了许多示例,试图找出如何更新 Canvas ,但没有成功。
我已经创建了一个 Python 代码的 GUI。我在窗口中创建了一些元素。我希望元素能够响应窗口大小。我在窗口对象中添加了一个 resizable=true 属性,但它只会使应用程序窗口响应而不是窗口
我想在应用程序中添加一项功能,当单击加号按钮时将创建新的输入字段。我现在正在使用这段代码: import PySimpleGUI as sg PLUS_ICO = b'iVBORw0KGgoAAAAN
我正在尝试在 GUI 中运行一些代码,在我获得一些文本输入后运行一个函数。然而,我尝试运行的功能实际上非常复杂,因此当它运行时,它会使整个图形用户界面卡住 10-15 秒,然后再继续。 我怎样才能让它
我想创建一个 PySimpleGui 表,其中可以仅使用鼠标选择多行(对于 python3 中的应用程序)。pysimplegui 表允许像往常一样通过 Ctrl 和 Shift 选择各种行,但我只需
我正在关注 PySimpleGUI文档并在我进行时进行我自己的编辑。我对它很陌生,并且有使用 Tkinter 的经验。 Tkinter 中有一个文本框,您可以使用代码 Text(window, wid
我是一名优秀的程序员,十分优秀!