92 lines
2.8 KiB
Python
92 lines
2.8 KiB
Python
#!/usr/bin/env python3
|
|
# -*- coding: utf-8 -*-
|
|
"""
|
|
验证按钮修复
|
|
"""
|
|
|
|
import sys
|
|
|
|
def verify_code_changes():
|
|
"""验证代码修改"""
|
|
print("🔍 验证代码修改...")
|
|
|
|
try:
|
|
# 读取修改后的文件
|
|
with open('ui/import_project_dialog.py', 'r', encoding='utf-8') as f:
|
|
content = f.read()
|
|
|
|
# 检查关键修改
|
|
checks = [
|
|
("select_files_requested 信号定义", "select_files_requested = pyqtSignal()"),
|
|
("按钮点击事件连接", "select_btn.clicked.connect(self.select_files_requested.emit)"),
|
|
("信号连接到主对话框", "self.upload_area.select_files_requested.connect(self.select_files)"),
|
|
]
|
|
|
|
all_passed = True
|
|
for check_name, check_text in checks:
|
|
if check_text in content:
|
|
print(f"✅ {check_name}: 已修复")
|
|
else:
|
|
print(f"❌ {check_name}: 未找到修复")
|
|
all_passed = False
|
|
|
|
return all_passed
|
|
|
|
except Exception as e:
|
|
print(f"❌ 验证失败: {e}")
|
|
return False
|
|
|
|
def verify_import():
|
|
"""验证导入"""
|
|
print("\n🔍 验证模块导入...")
|
|
|
|
try:
|
|
from ui.import_project_dialog import ImportProjectDialog, UploadArea
|
|
print("✅ ImportProjectDialog 导入成功")
|
|
print("✅ UploadArea 导入成功")
|
|
|
|
# 检查信号定义
|
|
upload_area = UploadArea()
|
|
if hasattr(upload_area, 'select_files_requested'):
|
|
print("✅ select_files_requested 信号存在")
|
|
else:
|
|
print("❌ select_files_requested 信号不存在")
|
|
return False
|
|
|
|
return True
|
|
|
|
except Exception as e:
|
|
print(f"❌ 导入验证失败: {e}")
|
|
return False
|
|
|
|
def main():
|
|
"""主函数"""
|
|
print("🔧 验证'点击选择'按钮修复")
|
|
print("=" * 50)
|
|
|
|
# 验证代码修改
|
|
code_ok = verify_code_changes()
|
|
|
|
# 验证导入
|
|
import_ok = verify_import()
|
|
|
|
print("\n" + "=" * 50)
|
|
if code_ok and import_ok:
|
|
print("🎉 修复验证成功!")
|
|
print("\n📋 修复内容:")
|
|
print("1. ✅ 在 UploadArea 类中添加了 select_files_requested 信号")
|
|
print("2. ✅ 连接了'点击选择'按钮的点击事件到信号")
|
|
print("3. ✅ 在主对话框中连接了信号到 select_files 方法")
|
|
print("\n💡 现在拖拽区域中的'点击选择'按钮应该可以正常工作了!")
|
|
print(" 点击按钮会打开文件选择对话框,让用户选择要导入的文件。")
|
|
return True
|
|
else:
|
|
print("❌ 修复验证失败,请检查代码修改。")
|
|
return False
|
|
|
|
if __name__ == "__main__":
|
|
success = main()
|
|
print("\n按Enter键退出...")
|
|
input()
|
|
sys.exit(0 if success else 1)
|