Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

Checkboxen und Auswahlmenü in Zenity oder Yad

Alles rund um die verschiedenen Konsolen und shells sowie die Programmierung unter Linux

Moderator: Moderatoren

Antworten
bunter fisch
Member
Member
Beiträge: 75
Registriert: 12. Sep 2017, 10:25

Checkboxen und Auswahlmenü in Zenity oder Yad

Beitrag von bunter fisch » 5. Mär 2018, 20:01

Hallo,

ich habe mir mit Zenity eine kleine Abfrage erstellt, die so aussieht:

Code: Alles auswählen

zenity  --list  --title "Beschreibung" --column="" 96 128 160 192
Das sind Bitraten mit denen eine Audiodatei kodiert wird. Ich möchte nun noch zusätzlich eine Checkbox einfügen, ob im Anschluss automatsich ein Shutdown durchgeführt werden soll (ist schon so eingerichtet, dass es ohne Passworteingabe geht). Ich bekomme nun keine einfache Checkbox mit Zenity hin, so wie sie hier https://media-cdn.ubuntu-de.org/wiki/at ... efield.png für yad abgebildet ist ("Ich bin eine Checkbox").

Das geht widerrum mit Yad, nur habe ich bei Yad ein Problem mit o.g. Zenity-Beispiel. Wenn ich das it yad umsetze z. B. so

Code: Alles auswählen

echo $(yad --height=300 --list --column="" 96 128 160 192)
erhalte ich als Ausgabe
Durch den Strich nach der Zahl wird nichts verarbeitet. Was läuft da bei yad falsch?

Lösung 1 wäre die Checkbox mit Zenity einzurichten.
Lösung 2 wäre eine richtig funktionierende Auswahlliste mit Yad einzurichten.

Jemand eine Idee? Grundsätzlich ist yad umfangreichen, macht aber irgendwie immer Mätzchen dieser Art, weswegen ich oft lieber zu Zenity greife.
Zuletzt geändert von bunter fisch am 6. Mär 2018, 16:12, insgesamt 1-mal geändert.

Werbung:
abgdf
Guru
Guru
Beiträge: 3109
Registriert: 13. Apr 2004, 21:15

Re: Checkboxen und Auswahlmenü in Zenity oder Yad

Beitrag von abgdf » 5. Mär 2018, 20:29

Solche Dialogprogramme wie Zenity, yad oder auch xdialog oder KDialog sind nur schlecht funktionierende Krücken für einfache Abfragen für die Shell.
Wenn man auf komplexere Weise Daten abfragen will, sollte man in Betracht ziehen, eine richtige Sprache zur Datenverarbeitung und für grafische Oberflächen zu lernen. Als Einstieg wäre Python und Python/Tkinter geeignet (meine Seiten dazu wären hier und hier, das Beispiel hier zeigt z.B. ein paar Tkinter-Widgets einschließlich Checkbuttons/Checkboxes). Tkinter ist ein bißchen häßlich, funktioniert aber für kleinere bis mittelgroße grafische Oberflächen recht gut.

bunter fisch
Member
Member
Beiträge: 75
Registriert: 12. Sep 2017, 10:25

Re: Checkboxen und Auswahlmenü in Zenity oder Yad

Beitrag von bunter fisch » 6. Mär 2018, 06:45

Ist es nicht etwas übertrieben für eine einfache Oberfläche extra eine Programmiersprache zu lernen. Ich mach ja auch keine Ausbildung zum Kfz-Meister um die Autoreifen zu wechseln.

abgdf
Guru
Guru
Beiträge: 3109
Registriert: 13. Apr 2004, 21:15

Re: Checkboxen und Auswahlmenü in Zenity oder Yad

Beitrag von abgdf » 6. Mär 2018, 17:01

bunter fisch hat geschrieben:
6. Mär 2018, 06:45
Ist es nicht etwas übertrieben für eine einfache Oberfläche extra eine Programmiersprache zu lernen. Ich mach ja auch keine Ausbildung zum Kfz-Meister um die Autoreifen zu wechseln.
Ja, deshalb gibt's ja auch diese Dialog-Programme. Nur stößt man bald an ihre Grenzen, weil man schnell etwas möchte, das gerade nicht eingearbeitet wurde. Deshalb gibt es da auch so viele Ansätze. Die aber alle nicht befriedigen.

Die Skriptsprachen zu lernen, hat mir übrigens besonders viel Spaß gemacht, weil man nicht wie in bash mit unerwartetem Verhalten wie plötzlichen Subshells konfrontiert wird, sondern schnell und einfach gute Resultate erzielt. Wenn man sich mit bash oder C herumgeärgert hat, fühlt es sich so an, als könne man plötzlich fliegen. Was eigentlich die schönste Erfahrung mit Linux überhaupt war. Und das sehe nicht nur ich so.

Benutzeravatar
susejunky
Hacker
Hacker
Beiträge: 422
Registriert: 19. Sep 2014, 18:22

Re: Checkboxen und Auswahlmenü in Zenity oder Yad

Beitrag von susejunky » 6. Mär 2018, 19:18

bunter fisch hat geschrieben:
5. Mär 2018, 20:01
... nur habe ich bei Yad ein Problem mit o.g. Zenity-Beispiel. Wenn ich das it yad umsetze z. B. so

Code: Alles auswählen

echo $(yad --height=300 --list --column="" 96 128 160 192)
erhalte ich als Ausgabe
Durch den Strich nach der Zahl wird nichts verarbeitet. Was läuft da bei yad falsch?

Code: Alles auswählen

> man yad
ist hier der Schlüssel zum Erfolg.

Code: Alles auswählen

> RET="X";RET=`yad --height=600 --list --separator="" --column="Werte" 96 128 160 192`;echo "RET = $RET"
RET = 160
>
Viele Grüße

susejunky

Antworten