Files
diskmanager2/verify_tkinter.py
2026-02-09 03:14:35 +08:00

107 lines
3.0 KiB
Python

#!/usr/bin/env python3
"""
验证 Tkinter 版本的存储管理工具是否可以正确导入
"""
import sys
import os
def check_python_version():
"""检查 Python 版本"""
print(f"Python 版本: {sys.version}")
if sys.version_info < (3, 6):
print("错误: 需要 Python 3.6 或更高版本")
return False
return True
def check_tkinter():
"""检查 tkinter 是否可用"""
try:
import tkinter as tk
print(f"Tkinter 版本: {tk.Tcl().eval('info patch')}")
return True
except ImportError:
print("错误: 未找到 tkinter 模块")
print("请安装 tkinter:")
print(" CentOS/RHEL: sudo yum install python3-tkinter")
print(" Ubuntu/Debian: sudo apt-get install python3-tk")
return False
def check_modules():
"""检查自定义模块"""
modules_to_check = [
('logger_config_tkinter', '日志配置'),
('dialogs_tkinter', '对话框'),
('disk_operations_tkinter', '磁盘操作'),
('raid_operations_tkinter', 'RAID 操作'),
('lvm_operations_tkinter', 'LVM 操作'),
('occupation_resolver_tkinter', '设备占用解除'),
('mainwindow_tkinter', '主窗口'),
]
all_ok = True
for module_name, desc in modules_to_check:
try:
__import__(module_name)
print(f"{desc}模块 ({module_name}) 加载成功")
except Exception as e:
print(f"{desc}模块 ({module_name}) 加载失败: {e}")
all_ok = False
return all_ok
def check_system_modules():
"""检查系统信息模块"""
try:
from system_info import SystemInfoManager
print("✓ 系统信息模块 (system_info) 加载成功")
return True
except Exception as e:
print(f"✗ 系统信息模块 (system_info) 加载失败: {e}")
return False
def main():
"""主函数"""
print("=" * 60)
print("Linux 存储管理工具 - Tkinter 版本验证")
print("=" * 60)
print()
checks = [
("Python 版本", check_python_version),
("Tkinter 模块", check_tkinter),
("系统模块", check_system_modules),
("自定义模块", check_modules),
]
results = []
for name, check_func in checks:
print(f"\n检查 {name}...")
print("-" * 40)
result = check_func()
results.append((name, result))
print()
print("=" * 60)
print("验证结果汇总")
print("=" * 60)
all_passed = True
for name, result in results:
status = "通过" if result else "失败"
symbol = "" if result else ""
print(f"{symbol} {name}: {status}")
if not result:
all_passed = False
print()
if all_passed:
print("✓ 所有检查通过!可以运行 main_tkinter.py 启动程序。")
return 0
else:
print("✗ 部分检查失败,请根据上述提示修复问题。")
return 1
if __name__ == "__main__":
sys.exit(main())