如何通过按取消按钮关闭 zenity window?
How to close zenity window by press on Cancel button?
我有 until 循环,但我不知道如何在单击“取消”按钮时中断循环?我的直到循环看起来像这样:
until [[ "$VAR" == "End" && **<second cond. for cancel>** ]]; do
...
问题是如果我想关闭 window 我必须点击红叉。如果我想用“取消”按钮执行此操作,window 不会响应它。
尝试在点击取消后找到return值信息,并为其做一个表达式。
我想知道它应该在什么条件下才能正常工作 <second cond. for cancel>
解决方案:正如有人所说,<secound cond. for cancel>
应该是 $? == 1
。现在可以正常使用了。
如果您按下取消按钮(或关闭对话框 window,或按下 <Escape>
),Zenity 将以退出代码 1
退出。你可以这样写:
#!/bin/bash
rc=0
until [[ $VAR == "End" || $rc == 1 ]]; do
VAR=$(
zenity --entry --text "Choose an action"
)
rc=$?
done
如果您在文本字段中输入 End
,或者如果您按下 Cancel
按钮,此循环将退出。
我有 until 循环,但我不知道如何在单击“取消”按钮时中断循环?我的直到循环看起来像这样:
until [[ "$VAR" == "End" && **<second cond. for cancel>** ]]; do
...
问题是如果我想关闭 window 我必须点击红叉。如果我想用“取消”按钮执行此操作,window 不会响应它。
尝试在点击取消后找到return值信息,并为其做一个表达式。
我想知道它应该在什么条件下才能正常工作 <second cond. for cancel>
解决方案:正如有人所说,<secound cond. for cancel>
应该是 $? == 1
。现在可以正常使用了。
如果您按下取消按钮(或关闭对话框 window,或按下 <Escape>
),Zenity 将以退出代码 1
退出。你可以这样写:
#!/bin/bash
rc=0
until [[ $VAR == "End" || $rc == 1 ]]; do
VAR=$(
zenity --entry --text "Choose an action"
)
rc=$?
done
如果您在文本字段中输入 End
,或者如果您按下 Cancel
按钮,此循环将退出。