运行 uic 目录中的所有 .ui 文件使用 windows 批处理
Run uic for all .ui files in directory using windows batch
我可以获得 Qt .ui
文件的列表,如下所示:
D:\programing\qtproject\ui\designer>dir *.ui /B
main.ui
mainmenu.ui
mainwindow.ui
我现在做的是我手动 运行 uic
为他们中的每一个,因为 IDE 我正在使用(QtCreator,具有讽刺意味的是 IDE 应该与 Qt 完全兼容)不能做到这一点。
那么我可以 运行 uic
使用从 dir *.ui /B
获得的文件列表吗?如果这在所有子目录上递归工作,我会更喜欢。
好的,我使用一些有用的答案破解了它:
@echo off
rem Runs uic command over all files in all subdirectories
rem For loop arguments explained here:
rem start command arguments explained here:
rem /B is why the start creates no additional windows:
for /f %%F in ('dir *.ui /S /B') do start "" /B "uic" %%F -o %%~dpFui_%%~nF.h
要禁用递归(子目录),删除 dir
命令中的 /S
参数。
我可以获得 Qt .ui
文件的列表,如下所示:
D:\programing\qtproject\ui\designer>dir *.ui /B
main.ui
mainmenu.ui
mainwindow.ui
我现在做的是我手动 运行 uic
为他们中的每一个,因为 IDE 我正在使用(QtCreator,具有讽刺意味的是 IDE 应该与 Qt 完全兼容)不能做到这一点。
那么我可以 运行 uic
使用从 dir *.ui /B
获得的文件列表吗?如果这在所有子目录上递归工作,我会更喜欢。
好的,我使用一些有用的答案破解了它:
@echo off
rem Runs uic command over all files in all subdirectories
rem For loop arguments explained here:
rem start command arguments explained here:
rem /B is why the start creates no additional windows:
for /f %%F in ('dir *.ui /S /B') do start "" /B "uic" %%F -o %%~dpFui_%%~nF.h
要禁用递归(子目录),删除 dir
命令中的 /S
参数。