在使用yad -form时,单击按钮后显示的是一些{##**$$}(垂直栏),这个栏指示了什么&我如何阻止它们显示?提供示例代码,您可以体验
yad --width=400 --height=200 --button="gtk-ok" --form --field="Click Down":LBL "echo Clicked" --field="Click HERE":BTN结果输出将被“单击”
发布于 2019-01-05 11:03:51
我无法完全再现您所描述的情况,但我认为您需要问问自己,当按下按钮时,您需要yad做什么,或者更具体地说,yad应该如何将任何用户选择传递给您,即通过退出代码或标准输出信息。
选项--button="gtk-ok"创建一个不绑定到退出代码的按钮,yad可以使用该退出代码退出,并静默地通知您这个特定按钮已按下。因此,它似乎会尝试通过stdout上的输出通知您(打印两个默认的输出分隔符)。为了防止出现这种情况,您可以重新定义选项,例如:
--button="gtk-ok":1这会将1的退出代码与按下OK按钮联系起来,从而阻止进一步的输出。在命令提示符(或脚本中),您可以测试这个退出代码,它可以作为$?使用。
重要的是:请注意,yad手册表明`--按钮‘-选项的正确语法是:
-按钮=按钮:ID 添加对话框按钮。可以被多次使用。ID是退出代码或命令。(...)
因此,选项‘-按钮=“gtk-ok”在语法上似乎是不正确的。
为了得到您描述的行为,我不得不将--field="Click Down":LBL "echo Clicked"转换为--field="Click Down":BTN "echo Clicked"。
总之,以下命令在我的系统上正常工作:
yad --width=400 --height=200 --button="gtk-ok":1 --form --field="Click Down":BTN "echo Clicked" --field="Click HERE":BTNhttps://unix.stackexchange.com/questions/492627
复制相似问题