Bootstrap

python gui Gooey 报错 error: argument command: invalid choice:

运行程序时报错:

 

usage: main_gui_batcmm.py [-h] {Run Reset} ...

main_gui_batcmm.py: error: argument command: invalid choice: 'Run' (choose from 'Run Reset')

from gooey import Gooey, GooeyParser


@Gooey(program_name="BattCommunicate_GUI")
def gui_main():
    parser = GooeyParser(description="BattCommunicate_GUI")
    subs_list = parser.add_subparsers(help="cmms", dest="command")
    sub_action1 = subs_list.add_parser("Run Reset")
    sub_action1.add_argument("Reset Cmms",metavar="reset",default="")
    args = parser.parse_args()
    print(" Start print")
    print(args, flush=True)  # flush=true会立即把缓存内存的东西打印出来, 打印TextField内容


if __name__ == '__main__':
    gui_main()

解决:问题出在这个解析的动作命名: Run Reset, 带了空格,需要去掉空格。

sub_action1 = subs_list.add_parser("Run Reset")

sub_action1 = subs_list.add_parser("Run_Reset") # 这样就可以运行正常。

;