fix(local_song): 修复删除歌曲后搜索结果异常的问题
-修复删除歌曲后,搜索结果列表显示异常的问题 - 优化搜索歌曲逻辑,确保删除歌曲后搜索结果能够正确更新 -调整变量初始化顺序,提高代码可读性和维护性
This commit is contained in:
24
NFLmusic.py
24
NFLmusic.py
@ -326,22 +326,32 @@ def refresh():
|
|||||||
music_dir = [file for file in os.listdir(path) if file.endswith(('.mp3', '.flac', '.ogg', '.m4a'))]
|
music_dir = [file for file in os.listdir(path) if file.endswith(('.mp3', '.flac', '.ogg', '.m4a'))]
|
||||||
if var7.get() in ["", lang.get(la, "ui.download.entry.song_name")]:
|
if var7.get() in ["", lang.get(la, "ui.download.entry.song_name")]:
|
||||||
for musics in music_dir_without_endswith:
|
for musics in music_dir_without_endswith:
|
||||||
listbox1.insert("end", musics)
|
listbox1.insert(END, musics)
|
||||||
else:
|
else:
|
||||||
for musics in music_dir_without_endswith:
|
for musics in music_dir_without_endswith:
|
||||||
if search_words in musics:
|
if search_words in musics:
|
||||||
listbox1.insert("end", musics)
|
listbox1.insert(END, musics)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
def delete():
|
def delete():
|
||||||
global music_dir, listbox1, music_dir_without_endswith, filtered_list
|
global listbox1, filtered_list, music_dir, music_dir_without_endswith
|
||||||
try:
|
try:
|
||||||
if tkinter.messagebox.askokcancel(lang.get(la, "mbox.title.delete"), lang.get(la, "mbox.text.delete", )):
|
if tkinter.messagebox.askokcancel(lang.get(la, "mbox.title.delete"), lang.get(la, "mbox.text.delete", )):
|
||||||
abs_path = path + "/" + music_dir[listbox1.curselection()[0]]
|
abs_path = path + "/" + music_dir[listbox1.curselection()[0]]
|
||||||
abs_path_lrc = path + "/" + music_dir_without_endswith[listbox1.curselection()[0]] + ".lrc"
|
abs_path_lrc = path + "/" + music_dir_without_endswith[listbox1.curselection()[0]] + ".lrc"
|
||||||
music_dir_without_endswith.remove(filtered_list[listbox1.curselection()[0] - 1])
|
if var7.get() not in ["", lang.get(la, "ui.download.entry.song_name")]:
|
||||||
|
music_dir_filtered = []
|
||||||
|
for file in music_dir:
|
||||||
|
if search_words in os.path.splitext(file)[0]:
|
||||||
|
music_dir_filtered.append(file)
|
||||||
|
music_dir0 = music_dir_filtered
|
||||||
|
music_dir_without_endswith0 = [os.path.splitext(file)[0] for file in music_dir if
|
||||||
|
file.endswith(('.mp3', '.flac', '.ogg', '.m4a'))]
|
||||||
|
abs_path = path + "/" + music_dir0[listbox1.curselection()[0]]
|
||||||
|
abs_path_lrc = path + "/" + music_dir_without_endswith0[listbox1.curselection()[0]] + ".lrc"
|
||||||
|
music_dir_without_endswith.remove(filtered_list[listbox1.curselection()[0]])
|
||||||
os.remove(abs_path)
|
os.remove(abs_path)
|
||||||
try:
|
try:
|
||||||
os.remove(abs_path_lrc)
|
os.remove(abs_path_lrc)
|
||||||
@ -1207,7 +1217,7 @@ def download_version():
|
|||||||
|
|
||||||
|
|
||||||
def search_local_song():
|
def search_local_song():
|
||||||
global search_words, filtered_list
|
global search_words, filtered_list, music_dir_without_endswith
|
||||||
while True:
|
while True:
|
||||||
if focused:
|
if focused:
|
||||||
former_words = var7.get()
|
former_words = var7.get()
|
||||||
@ -1220,7 +1230,7 @@ def search_local_song():
|
|||||||
listbox1.unbind("<Double-1>")
|
listbox1.unbind("<Double-1>")
|
||||||
else:
|
else:
|
||||||
listbox1.bind("<Double-1>", playsound)
|
listbox1.bind("<Double-1>", playsound)
|
||||||
print(filtered_list)
|
print(music_dir_without_endswith)
|
||||||
listbox1.delete(0, END)
|
listbox1.delete(0, END)
|
||||||
for song in filtered_list:
|
for song in filtered_list:
|
||||||
listbox1.insert(END, song)
|
listbox1.insert(END, song)
|
||||||
@ -1228,7 +1238,7 @@ def search_local_song():
|
|||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
|
|
||||||
|
|
||||||
version = "4.1.5"
|
version = "4.1.6"
|
||||||
poem = ""
|
poem = ""
|
||||||
appdata = os.getenv("APPDATA")
|
appdata = os.getenv("APPDATA")
|
||||||
make_resource()
|
make_resource()
|
||||||
|
Reference in New Issue
Block a user