【问题标题】:how can i configure the cancel button of dialog box bash?如何配置对话框bash的取消按钮?
【发布时间】:2015-01-25 03:26:06
【问题描述】:

例如我想配置这个对话框的取消按钮。

dialog --backtitle "Dialog - Form sample" \
 --form " Form Test - use [up] [down] to select input field " 21 70 18 \
 "Network-ID:" 2 2 "" 2 15 20 0\
 "Subnet Mask:" 4 2 "" 4 15 20 0\

我该怎么做?

【问题讨论】:

  • 在什么意义上配置? --cancel-label?
  • 例如,如果我选择取消,我想启动一个脚本
  • 我认为您需要响应对话框中的取消/esc 返回代码。
  • 你能举个例子吗?如果可能的话?
  • 我不熟悉对话框。我刚刚阅读了手册页。它在那里谈论这个。

标签: bash shell


【解决方案1】:

另外,注意$?的解释关于“是否选择取消” 可以反过来:

当“取消”被选中时,只有$? -当量 1 另一方面,当一个适当的菜单选择 被选中,$?为 0(并且选择本身在另一个变量中 你自己定义)。

示例代码:

exec 3>&1
result=$(dialog --title "Choose action from menu" \
       --menu "\n        Use arrows - UP/DOWN \n\                              
       Press [Enter] to select\n" 20 40 10 \
       "I"       "Installation" \
       "S"       "Check system" \
       "X"       "eXit" 2>&1 1>&3);

现在对话框默认还显示一个确定和取消按钮。

如果用户选择了“OK”,那么 $? = 0,并且 $result = 'I' 或 'S' 或 'X' 如果用户选择了“取消”,$? = 1,并且 $result 是未定义的 ('')

我的“对话框--版本”是 1.3-20160209

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-27
    • 1970-01-01
    • 2012-01-10
    • 1970-01-01
    • 2010-11-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多