mirror of
https://github.com/3minbe/DBC_Converter.git
synced 2026-05-17 01:23:58 +09:00
파일 이름 변경
This commit is contained in:
parent
00c7bcbc9c
commit
1cf84255e2
98
DBC_GUI.py
98
DBC_GUI.py
@ -1,98 +0,0 @@
|
|||||||
import tkinter as tk
|
|
||||||
from tkinter import filedialog, messagebox
|
|
||||||
import os
|
|
||||||
import json
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
config_file = "config.json"
|
|
||||||
|
|
||||||
def load_last_path():
|
|
||||||
if os.path.exists(config_file):
|
|
||||||
with open(config_file, "r") as f:
|
|
||||||
config = json.load(f)
|
|
||||||
return config.get("last_path", os.path.join(os.path.join(os.environ['USERPROFILE']), 'Desktop'))
|
|
||||||
return os.path.join(os.path.join(os.environ['USERPROFILE']), 'Desktop')
|
|
||||||
|
|
||||||
def save_last_path(path):
|
|
||||||
with open(config_file, "w") as f:
|
|
||||||
json.dump({"last_path": path}, f)
|
|
||||||
|
|
||||||
last_path = load_last_path()
|
|
||||||
|
|
||||||
def on_open():
|
|
||||||
global last_path
|
|
||||||
file_paths = filedialog.askopenfilenames(
|
|
||||||
initialdir=last_path,
|
|
||||||
filetypes=[("DBC files", "*.dbc"), ("All files", "*.*")]
|
|
||||||
)
|
|
||||||
if file_paths:
|
|
||||||
last_path = os.path.dirname(file_paths[0])
|
|
||||||
save_last_path(last_path)
|
|
||||||
|
|
||||||
existing_files = [chk.cget("text") for chk in file_listbox_inner.winfo_children() if isinstance(chk, tk.Checkbutton)]
|
|
||||||
|
|
||||||
for file_path in file_paths:
|
|
||||||
file_name = os.path.basename(file_path)
|
|
||||||
if file_name in existing_files:
|
|
||||||
messagebox.showwarning("경고", f"동일한 파일이 존재합니다 \n\n {file_name}")
|
|
||||||
else:
|
|
||||||
var = tk.BooleanVar()
|
|
||||||
chk = tk.Checkbutton(file_listbox_inner, text=file_name, variable=var, anchor='w', bg=file_listbox.cget("bg"))
|
|
||||||
chk.var = var
|
|
||||||
chk.pack(anchor='w', fill=tk.X, padx=5, pady=2)
|
|
||||||
separator = tk.Frame(file_listbox_inner, height=1, bg="gray", width=760)
|
|
||||||
separator.pack(fill=tk.X, padx=5, pady=2)
|
|
||||||
|
|
||||||
setList(file_paths, file_listbox_inner)
|
|
||||||
|
|
||||||
def setList(file_paths, tree):
|
|
||||||
for file_path in file_paths:
|
|
||||||
dir, file = os.path.split(file_path)
|
|
||||||
fsize = os.path.getsize(file_path)
|
|
||||||
mtime = os.path.getmtime(file_path)
|
|
||||||
mtimestamp = datetime.datetime.fromtimestamp(int(mtime))
|
|
||||||
|
|
||||||
tree.insert('', 'end', values=(file, file, dir, str(fsize), str(mtimestamp)))
|
|
||||||
|
|
||||||
def on_exit():
|
|
||||||
root.destroy()
|
|
||||||
|
|
||||||
root = tk.Tk()
|
|
||||||
root.title("DBC to C Converter")
|
|
||||||
root.geometry("1000x800") # 창 크기 설정
|
|
||||||
|
|
||||||
# ...existing code...
|
|
||||||
|
|
||||||
top_frame = tk.Frame(root)
|
|
||||||
top_frame.pack(side=tk.TOP, anchor="ne")
|
|
||||||
|
|
||||||
convert_button = tk.Button(top_frame, text="변환")
|
|
||||||
convert_button.pack(side=tk.RIGHT)
|
|
||||||
|
|
||||||
exit_button = tk.Button(top_frame, text="종료", command=on_exit)
|
|
||||||
exit_button.pack(side=tk.RIGHT)
|
|
||||||
|
|
||||||
middle_frame = tk.Frame(root)
|
|
||||||
middle_frame.pack(expand=True)
|
|
||||||
|
|
||||||
file_listbox = tk.Canvas(middle_frame, width=780, bd=2, relief=tk.SOLID)
|
|
||||||
file_listbox.pack(side=tk.LEFT, fill=tk.Y, expand=False, padx=10, pady=10)
|
|
||||||
|
|
||||||
file_listbox_inner = tk.Frame(file_listbox, padx=5, pady=5, bg=file_listbox.cget("bg"))
|
|
||||||
file_listbox.create_window((0, 0), window=file_listbox_inner, anchor='nw')
|
|
||||||
|
|
||||||
# 기본 구분선 추가
|
|
||||||
separator = tk.Frame(file_listbox_inner, height=1, bg="gray", width=780)
|
|
||||||
separator.pack(fill=tk.X, padx=5, pady=2)
|
|
||||||
|
|
||||||
scrollbar_listbox = tk.Scrollbar(middle_frame, orient=tk.HORIZONTAL, command=file_listbox.xview)
|
|
||||||
scrollbar_listbox.pack(side=tk.BOTTOM, fill=tk.X)
|
|
||||||
scrollbar_listbox.config(width=20) # 스크롤바 너비 설정
|
|
||||||
file_listbox.config(xscrollcommand=scrollbar_listbox.set)
|
|
||||||
|
|
||||||
open_button = tk.Button(middle_frame, text="추가", command=on_open)
|
|
||||||
open_button.pack(side=tk.LEFT)
|
|
||||||
|
|
||||||
# ...existing code...
|
|
||||||
|
|
||||||
root.mainloop()
|
|
||||||
Loading…
Reference in New Issue
Block a user