python - ItemClicked 以在 tableview 中显示数据
问题描述
我选择了包含输入文件的目录,它显示在选项卡的右侧。
就我而言,我希望在单击选项卡左侧时查看每个输入文件的内容。我使用qt.list.itemClicked选择文件,该文件应该显示在qt.tableView但是,现在,它只是退出,退出代码为 -1073740791 (0xC0000409)
你有解决办法吗?
我的代码:
import sys
import os
from PyQt5 import QtWidgets
import design
import pandas as pd
class interface(QtWidgets.QMainWindow, design.Ui_MainWindow):
def __init__(self):
super().__init__()
self.setupUi(self)
self.new_analysis.triggered.connect(self.browse_input_folder)
self.listOfInputs.itemClicked.connect(self.input_show)
def browse_input_folder(self):
directory = QtWidgets.QFileDialog.getExistingDirectory(self, 'Выберите папку с исходными данными:')
if directory:
for file_name in os.listdir(directory):
self.listOfInputs.addItem(file_name)
def input_show(self, filename):
input_file = pd.ExcelFile(filename)
table = pd.read_excel(input_file, names=['Время, час', 'S3', 'S1', 'e1', 'e3'], skiprows=1, usecols='A:E')
self.tableShow.clear()
self.tableShow(table)
def main():
app = QtWidgets.QApplication(sys.argv)
window = interface()
window.show()
app.exec_()
if __name__ == '__main__':
main()
解决方案
推荐阅读
- python - Python Resutling 'int' 对象中的 OpenCv 问题不可调用
- css - 如何使用 CSS 使具有不同背景的 2 列等高?
- flutter - 有什么方法可以在 Flutter 中的 PDF 文件上添加标记或图钉?
- php - 缺少 openssl 扩展 phpmailer
- aws-api-gateway - 使用 WAF 保护 SAM 定义的 API
- go - 验证模拟调用的顺序
- python - 用于调试 Python 模块的 Visual Studio Code launch.json 设置
- ruby-on-rails - Rails:更新(has_many)子记录时更新父属性
- javascript - 如何使用 readLine() 在使用 Javascript 的输入中逐行读取?
- javascript - 如果存在与 MongoDB 和 Mongoose 匹配的另一个文档,则添加字段