при выполнении файла .exe, созданного с помощью Pyinstaller моего кода py, у меня возникла проблема: при переходе на объединение окна PDF не отображается функция перетаскивания tkinterdnd2 (слева изображение показывает, как .exe показывает окно, а второе — как интерпретатор показывает окно.
Я пытаюсь проверить консоль. Я увидел, что были импортированы некоторые базовые модули, такие как numpy и TclTk для tkinter, но я никогда не видел PyPDF2 или tkinterdnd2, и я подозревал, что он не обрабатывал модули. Но я не знаю.
Pd, я использую настройки --onefile --windowed file.py
при выполнении файла .exe, созданного с помощью Pyinstaller моего кода py, у меня возникла проблема: при переходе на объединение окна PDF не отображается функция перетаскивания tkinterdnd2 (слева изображение показывает, как .exe показывает окно, а второе — как интерпретатор показывает окно. Я пытаюсь проверить консоль. Я увидел, что были импортированы некоторые базовые модули, такие как numpy и TclTk для tkinter, но я никогда не видел PyPDF2 или tkinterdnd2, и я подозревал, что он не обрабатывал модули. Но я не знаю. Pd, я использую настройки --onefile --windowed file.py [img]https://i.sstatic.net/2ffB1LLM.png[/img] [img]https://i.sstatic.net/A5eOn48J.png[/img]
[code]import tkinter as tk from tkinter import messagebox from tkinterdnd2 import DND_FILES, TkinterDnD import PyPDF2 import os
file_paths = []
def window_merge(): root.destroy()
merge_root = TkinterDnD.Tk() merge_root.title("Drag and Drop Files") merge_root.geometry("300x240") merge_root.maxsize(400,350) merge_root.config(bg="lightgrey")
split_root = TkinterDnD.Tk() split_root.title("Drag and Drop Files") split_root.geometry("300x240") split_root.maxsize(400,350) split_root.config(bg="lightgrey")
def merge_pdfs(): global file_paths output_path = get_output_path(file_paths) merger = PyPDF2.PdfMerger() for pdf in file_paths: merger.append(pdf) with open(output_path,'wb')as output_file: merger.write(output_file) messagebox.showinfo("Merge Complete", f"PDFs have been merged into {output_path}")
def split_pdf(): global file_paths for file_path in file_paths: with open(file_path,'rb') as input_file: reader = PyPDF2.PdfReader(input_file) base_name = os.path.splitext(os.path.basename(file_path))[0] for page_num in range(len(reader.pages)): output_dir = get_output_dir(file_paths) writer = PyPDF2.PdfWriter() writer.add_page(reader.pages[page_num]) output_path = f'{output_dir}/{base_name}_page_{page_num + 1}.pdf' with open(output_path,'wb') as output_file: writer.write(output_file) messagebox.showinfo("Split Complete", f"PDFs have been split into {output_path}")
window_home()[/code]
Редактировать: при выполнении файла с консоли я увидел, что возникает ошибка _tkinter .TclError: не могу найти пакет tkdnd