feat(FileSelectWidget): 优化文件对话框初始目录为当前输入路径所在目录
This commit is contained in:
@ -874,13 +874,23 @@ class FileSelectWidget(QWidget):
|
|||||||
|
|
||||||
def browse_file(self):
|
def browse_file(self):
|
||||||
"""浏览文件"""
|
"""浏览文件"""
|
||||||
|
# 获取当前输入框中的文本,尝试从中提取初始目录
|
||||||
|
current_text = self.line_edit.text().strip()
|
||||||
|
initial_dir = ""
|
||||||
|
|
||||||
|
if current_text:
|
||||||
|
# 尝试使用当前路径的目录作为初始目录
|
||||||
|
dir_path = os.path.dirname(current_text)
|
||||||
|
if dir_path and os.path.exists(dir_path):
|
||||||
|
initial_dir = dir_path
|
||||||
|
|
||||||
if self.mode == "save":
|
if self.mode == "save":
|
||||||
file_path, _ = QFileDialog.getSaveFileName(
|
file_path, _ = QFileDialog.getSaveFileName(
|
||||||
self, "保存文件", "", self.file_filter
|
self, "保存文件", initial_dir, self.file_filter
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
file_path, _ = QFileDialog.getOpenFileName(
|
file_path, _ = QFileDialog.getOpenFileName(
|
||||||
self, "选择文件", "", self.file_filter
|
self, "选择文件", initial_dir, self.file_filter
|
||||||
)
|
)
|
||||||
if file_path:
|
if file_path:
|
||||||
self.line_edit.setText(file_path)
|
self.line_edit.setText(file_path)
|
||||||
|
|||||||
Reference in New Issue
Block a user