zenity对话框窗口,带有两个按钮但没有文本条目

时间:2016-06-23 16:36:06

标签: bash user-interface zenity

我想创建一个zenity对话框窗口,其中只有两个按钮作为用户输入。

以下内容创建了一个带有两个按钮但具有文本条目空间的窗口

var appendContentSize = $('#appendContent .appended-element').size();
       $('#btnAddMore').click(function(){
            var append='<div class="appended-element"><div class="form-group"> <label>Day '+appendContentSize+'</label><input type="text" value="" name="subHeading" class="form-control"></div>';

       append+='<div class="form-group"> <label>Description</label> <textarea class="form-control" name="description"></textarea>';
       append+='</div><button type="button" class="btn btn-danger remove" id="btnAddMore">Remove</button></div>';
           $('#appendContent').append(append);
           appendContentSize++
       });
       $('body').on('click','.remove',function(){
           //alert('ok');
           if(appendContentSize > 0){
                $(this).parent().remove();
            appendContentSize--
           }
       });

以下内容仅使用一个按钮创建一个窗口

zenity --entry --title="" --text "Choose A or B" --ok-label="B" --cancel-label="A"

3 个答案:

答案 0 :(得分:4)

您正在寻找

--question

zenity --question \
--title="" \
--text "Choose A or B" \
--ok-label="B" \
--cancel-label="A"

答案 1 :(得分:2)

至少最近版本的zenity有一个--extra-button标志。

结合退出代码的值和stdout的内容,代码可以弄清楚用户做了什么。

例如:

while true; do
  ans=$(zenity --info --title 'Choose!' \
      --text 'Choose A or B or C' \
      --ok-label A \
      --extra-button B --extra-button C \
      --timeout 3)
  rc=$?
  echo "${rc}-${ans}"
done

结果如下:

# timeout
5-
# ESC key
1-
# A button
0-
# B button
1-B
# C button
1-C

请注意,上述内容与其他对话框类似,但某些组合可能会令人惊讶。务必尝试并处理各种不同的用户交互。

答案 2 :(得分:-1)

您也可以使用--info

zenity --info \
--title="A or B" \
--text "Choose A or B" \
--ok-label="B" \
--cancel-label="A"