29 lines
813 B
Python
29 lines
813 B
Python
import subprocess
|
|
import sys
|
|
from codes.common import clibs
|
|
from pathlib import Path
|
|
|
|
UIC_CMD = "pyside6-uic"
|
|
|
|
|
|
def single_uic(ui_path: str, py_path: str):
|
|
for file in Path(ui_path).rglob("*.ui"):
|
|
file_name = file.stem
|
|
ui_file = file
|
|
py_file = Path(py_path) / f"{file_name}.py"
|
|
cmd = [UIC_CMD, "-o", py_file, ui_file]
|
|
|
|
print(f"Processing {ui_file} -> {py_file}")
|
|
try:
|
|
subprocess.run(cmd, check=True, capture_output=True, text=True)
|
|
except subprocess.CalledProcessError as e:
|
|
print(f"转换失败: {ui_file}\n{e.stderr}", file=sys.stderr)
|
|
|
|
def main():
|
|
ui_path = clibs.base_path / "assets" / "ui"
|
|
py_path = clibs.base_path / "codes" / "ui"
|
|
single_uic(str(ui_path), str(py_path))
|
|
|
|
if __name__ == "__main__":
|
|
main()
|