Pythonで拡張子の変更を行うGUIアプリでのエラー
解決したいこと
pythonでフォルダ内のファイルの拡張子を変更するGUIアプリを作っているが変更する機能をつけようとしていたらエラーが発生したためそれの解決方法を教えて頂きたい。
発生している問題・エラー
Traceback (most recent call last):
File "c:\proglam\Python\work\FileExtChenger\main_var2 copy.py", line 60, in <module>
f.rename(apps+f.stem+after)
File "C:\Users\keks\AppData\Local\Programs\Python\Python39\lib\pathlib.py", line 1382, in rename
self._accessor.rename(self, target)
PermissionError: [WinError 32] プロセスはファイルにアクセスできません。別のプロセスが使用中です。: '.' -> '.!combobox2'
該当するソースコード
import tkinter
import tkinter.ttk as ttk
from tkinter import filedialog
from tkinter import *
from msilib.schema import Directory
from pathlib import Path
from setuptools import Command
apps=''
before=''
after=''
def directory_select():
file_path=tkinter.filedialog.askdirectory()
apps=file_path
input_box.insert(tkinter.END, file_path)
#ウインドウの作成
root = tkinter.Tk()
root.title("Python GUI")
root.geometry("360x240")
#ラベルの作成
input_label = tkinter.Label(text="変更するフォルダorファイル")
input_label.place(x=10, y=20)
#入力欄の作成
input_box = tkinter.Entry(width=40)
input_box.place(x=10, y=40)
#ボタンの作成
button = tkinter.Button(text="参照",command=directory_select)
button.place(x=260, y=36)
#ラベルの作成
input_label2 = tkinter.Label(text="変更するファイル拡張子")
input_label2.place(x=10, y=60)
module=('.txt','.png','.JPEG',"*")
combobox = ttk.Combobox(root, height=4,width=15,values=module)
before=combobox
combobox.place(x=10,y=80)
#ラベルの作成
input_label3 = tkinter.Label(text="変更後のファイル拡張子")
input_label3.place(x=150, y=60)
module=('.txt','.png','.JPEG')
combobox2 = ttk.Combobox(root, height=3,width=15,values=module)
after=str(combobox2)
combobox2.place(x=150,y=80)
# 拡張子の変更
for f in Path(apps).rglob(before.get()):
f.rename(apps+f.stem+after)
#ウインドウの描画
root.mainloop()
自分で試したこと
0