Zenity - izveido grafiskos (GTK +) dialoglodziņus komandrindas un čaulas skriptos


GNU Linux, operētājsistēma, kas balstīta uz ļoti spēcīgu kodolu ar nosaukumu Linux. Linux ir slavens ar komandrindas operācijām. Ar Linux izgudrojumu ikdienas darbā un darbvirsmas skaitļošanā nix vairs nav tendenciozs pret komandrindu, tas ir vienlīdz grafisks, un grafiskās lietojumprogrammas izstrāde joprojām nav grūts uzdevums.

Šajā rakstā mēs apspriedīsim vienkārša grafiskā dialoglodziņa izveidi un izpildi, izmantojot GTK + lietojumprogrammu ar nosaukumu “Zenity”.

Kas ir Zenity?

Zenity ir atvērtā koda un starpplatformu lietojumprogramma, kas komandrindā un izmantojot čaulas skriptus parāda GTK + dialoglodziņus. Tas ļauj lūgt un prezentēt informāciju uz/no čaulas grafiskajās kastēs. Lietojumprogramma ļauj komandrindā izveidot grafiskus dialoglodziņus un ļoti atvieglo lietotāja un čaulas mijiedarbību.

Ir arī citas alternatīvas, taču nekas nav salīdzināms ar Zenity vienkāršību, īpaši tad, ja jums nav nepieciešama sarežģīta programmēšana. Zenity, rīks, pie kura jums jābūt rokām.

  1. FOSS programmatūra
  2. daudzplatformu lietojums
  3. Atļaut GTK + dialoglodziņa izpildi
  4. komandrindas rīks
  5. Atbalsts čaulas skriptu veidošanā

  1. Viegla GUI izveide
  2. Mazāk funkciju nekā citi sarežģīti rīki
  3. Ļauj čaulas skriptiem mijiedarboties ar GUI lietotājiem
  4. Lietotāju grafiskai mijiedarbībai ir iespējama vienkārša dialoglodziņa izveidošana

Tā kā Zenity ir pieejams visām zināmajām galvenajām platformām un pamatojoties uz GTK + bibliotēku, Zenity programmu var pārnest uz/no citas platformas.

Zenity instalēšana Linux

Zentity pēc noklusējuma ir instalēts vai pieejams mūsdienu Linux lielākās daļas izplatīšanas krātuvē. Varat pārbaudīt, vai tas ir instalēts jūsu datorā, izpildot šādas komandas.

[email :~$ zenity --version 

3.8.0
[email :~$ whereis zenity 

zenity: /usr/bin/zenity /usr/bin/X11/zenity /usr/share/zenity /usr/share/man/man1/zenity.1.gz

Ja tas nav instalēts, varat to instalēt, izmantojot komandu Apt vai Yum, kā parādīts zemāk.

[email :~$ sudo apt-get install zenity		[on Debian based systems]

[email :~# yum install zenity				[on RedHat based systems]

Turklāt jūs varat to izveidot arī no avota failiem, lejupielādējot jaunāko Zenity avota pakotni (t.i. pašreizējo 3.8 versiju), izmantojot šo saiti.

  1. http://ftp.gnome.org/pub/gnome/sources/zenity/

Zenity Basic dialoglodziņi

Daži no Zenity pamata dialogiem, kurus var izsaukt tieši no komandrindas.

[email :~# zenity --calendar
[email :~# zenity --error
[email :~# zenity --entry
[email :~# zenity --info
[email :~# zenity --question
[email :~# zenity --progress
[email :~# zenity --scale
[email :~# zenity --password
[email :~# zenity --forms
[email :~# zenity --about

Izveidot čaulas skripta dialoglodziņu

Tagad mēs apspriedīsim Zenity Dialog izveidi, izmantojot šeit vienkāršus čaulas skriptus. Lai gan mēs varam izveidot vienu dialogu, izpildot Zenity komandas tieši no čaumalas (kā mēs to darījām iepriekš), bet pēc tam mēs nevaram saistīt divus dialoglodziņus, lai iegūtu kādu jēgpilnu rezultātu.

Kā būtu ar interaktīvu dialoglodziņu, kas ņem no jums ieguldījumu un parāda rezultātu.

#!/bin/bash 
first=$(zenity --title="Your's First Name" --text "What is your first name?" --entry) 
zenity --info --title="Welcome" --text="Mr./Ms. $first" 
last=$(zenity --title="Your's Last Name" --text "$first what is your last name?" --entry) 
zenity --info --title="Nice Meeting You" --text="Mr./Ms. $first $last"

Saglabājiet to “neko.sh” (parasti) un neaizmirstiet padarīt to izpildāmu. Iestatiet 755 atļauju jebko.sh failam un palaidiet skriptu.

[email :~# chmod 755 anything.sh 
[email :~# sh anything.sh

Parastais šebangs aka hashbang

#!/bin/bash

Zemāk esošajā rindiņā ‘first’ ir mainīgais, un mainīgā vērtība tiek ģenerēta izpildes laikā.

    1. ‘–entry’ nozīmē, ka zenitātei tiek lūgts ģenerēt teksta ievades lodziņu.
    2. ‘- title =‘ definē ģenerētā tekstlodziņa nosaukumu.
    3. ‘—text =‘ definē tekstu, kas pieejams teksta ievades lodziņā.

    first=$(zenity --title="Your's First Name" --text "What is your first name?" --entry)

    Šī zemāk esošā skripta faila rindiņa ir paredzēta informācijas (–info) ģenerēšanai dialoglodziņā ar virsrakstu “Welcome” un tekstu “Mr./Ms.first”

    zenity --info --title="Welcome" --text="Mr./Ms. $first"

    Šī skripta rindiņa ir līdzīga skripta otrajai rindiņai, izņemot to, ka šeit ir definēts jauns mainīgais ‘pēdējais’.

    last=$(zenity --title="Your's Last Name" --text "$first what is your last name?" --entry)

    Šī skripta pēdējā rindiņa atkal ir līdzīga skripta trešajai rindiņai, un tā ģenerē informācijas dialoglodziņu, kurā ir gan mainīgie ‘$first’, gan ‘$last’.

    zenity --info --title="Nice Meeting You" --text="Mr./Ms. $first $last"

    Lai iegūtu papildinformāciju par to, kā izveidot pielāgotus dialoglodziņus, izmantojot čaulas skriptu, apmeklējiet nākamajā atsauces lapā Zenity.

    1. https://help.gnome.org/users/zenity/stable/

    Nākamajā rakstā mēs integrēsim Zenity ar vairākiem apvalka skriptiem GUI lietotāju mijiedarbībai. Līdz tam sekojiet līdzi un sazinieties ar Tecmint. Neaizmirstiet komentāru sadaļā sniegt vērtīgas atsauksmes.