|  | 
 
 发表于 2024-3-29 15:19:13
|
显示全部楼层 
| 
 当然可以!下面是一个将代码封装成函数的示例:
 
 
 复制代码import sys
from PySide6.QtWidgets import QApplication, QMainWindow, QPushButton, QTextEdit, QVBoxLayout, QWidget
from PySide6.QtCore import QFile, QTextStream
def generate_document(file_path, workbook):
    with open(file_path, "w") as f:
        for i, sheet_name in enumerate(workbook.sheet_names()):
            f.write(f"sheet_name{i+1}:\n")
            # 在这里你可以加入用户录入规则的代码
            f.write("录入规则1;录入规则2;录入规则3\n")
            f.write("。\n")
    print("文档已生成!")
class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("自动生成文档")
        self.resize(400, 300)
        self.central_widget = QWidget()
        self.setCentralWidget(self.central_widget)
        self.layout = QVBoxLayout(self.central_widget)
        self.generate_button = QPushButton("生成文档")
        self.generate_button.clicked.connect(self.generate_document)
        self.layout.addWidget(self.generate_button)
        self.text_edit = QTextEdit()
        self.layout.addWidget(self.text_edit)
        
    def generate_document(self):
        file_path = self.text_edit.toPlainText().strip()
        if file_path:
            generate_document(file_path, self.Base_Workbook)
if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = MainWindow()
    window.show()
    sys.exit(app.exec())
 在这个示例中,我将生成文档的代码封装到了 `generate_document` 函数中。你可以单独调用这个函数,并传入文件路径和工作簿对象作为参数。
 
 在 `MainWindow` 类中的 `generate_document` 方法中,会根据用户输入的文件路径和工作簿对象调用 `generate_document` 函数来生成文档。
 
 这样,你就可以在其他地方直接调用 `generate_document` 函数,而不需要依赖于窗口界面。
 
 以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
 | 
 |