Como faço para criar um formulário do Zenity com uma lista de verificação nele

3

Estou tentando criar uma pequena GUI no Zenity, pois são algumas entradas de texto acopladas a uma lista de verificação. Parece, no entanto, a única lista que posso adicionar a um formulário é uma lista de valores fixos, e não um com caixas de seleção. Existe alguma solução para isso?

Basicamente é algo assim, mas --checklist não está disponível para formulários, e eu não tenho idéia de como colocar essas coisas na mesma janela.

zenity --forms --title="Options"\
--text="Edit options"\
--add-entry="File:"\
--add-entry="Username:"\
--add-list="Features" --checklist\'

Eu tente adicionar valores à lista e às colunas, mas fazendo isso:

zenity --forms --title="Options"\
--text="Edit options"\
--add-entry="File:"\
--add-entry="Username:"\
--add-list="Features" \
--list-values="A|B|C" \

Isso não ajudou, no entanto, apenas adiciona 3 strings na caixa de listagem. Eu pensei em tentar fazer uma lista contendo outras entradas, então primeiro eu fiz uma lista básica.

zenity --list --checklist --title="Options"\
--text="Select your features"\
--column="Use"\
--column="Feature"\
TRUE A\
False B\

Pedaço de bolo! Então eu pensei em adicionar uma entrada, assim como nas formas:

zenity --list --checklist --title="Options"\
    --text="Select your features"\
    --add-entry="File:"\
    --column="Use"\
    --column="Feature"\
    TRUE A\
    False B\

Ele é executado exatamente como deveria, mas o campo de entrada de texto nunca é exibido.

    
por user3801839 24.11.2016 / 13:41

1 resposta

2

Parece que a opção --add-entry não é suportada quando --list --checklist é usado. Eu adaptei seu código para criar:

#!/bin/bash

zenity --list --checklist --title="Options"\
    --text="Select your features"\
    --column="Use"\
    --column="Feature"\
    TRUE A\
    False B\

zenity --forms --title="Create user" --text="Add new user" \
   --add-entry="First Name" \
   --add-entry="Last Name" \
   --add-entry="Username" \
   --add-password="Password" \
   --add-password="Confirm Password" \
   --add-calendar="Expires"

A primeira seção você sabe o que parece já. A segunda seção é assim:

O --add-entry funciona no tipo de caixa de diálogo --forms , mas não no tipo de caixa de diálogo --list .

Credite para --forma codificar para: ( Publicar no Stack Exchange )

    
por WinEunuuchs2Unix 26.11.2016 / 03:07