Gtkdialog - Ƙirƙirar Mutunan Zane (GTK+) da Akwatunan Magana Ta Amfani da Rubutun Shell a Linux


Gtkdialog (ko gtkdialog) babban buɗaɗɗen tushen kayan aiki ne don ƙirƙira da gina GTK+ Interfaces da Akwatunan Magana tare da taimakon rubutun harsashi na Linux da kuma amfani da ɗakin karatu na GTK, da kuma yin amfani da syntax mai kama da xml, wanda yana sauƙaƙe ƙirƙirar musaya ta amfani da gtkdialog. Ya yi kama da sanannen kayan aikin da ake kira Zenity, amma ya zo tare da wasu fasalulluka masu amfani waɗanda za su ba ku damar ƙirƙirar widgets da yawa kamar vbox, hbox, maɓalli, firam, rubutu, menu, da ƙari mai yawa.

Karanta Hakanan : Ƙirƙiri Akwatunan Magana na GTK+ ta amfani da Zenity

Shigar da Gtkdialog a cikin Linux

Kuna iya zazzage gtkdialog-0.8.3 (wanda shine sabon sigar) ko kuma kuna iya amfani da umarnin wget, buɗe fayil ɗin da aka zazzage kuma gudanar da waɗannan umarni masu zuwa don haɗawa daga tushe.

$ sudo apt-get install build-essential		[on Debian based systems]
# yum install gcc make gcc-c++			[on RedHat based systems]
$ wget https://gtkdialog.googlecode.com/files/gtkdialog-0.8.3.tar.gz
$ tar -xvf gtkdialog-0.8.3.tar.gz
$ cd gtkdialog-0.8.3/
$ ./configure
$ make
$ sudo make install

Yanzu bari mu fara ƙirƙirar wasu akwatuna, ƙirƙirar sabon rubutun \myprogram a cikin babban fayil ɗin ku.

$ cd
$ touch myprogram

Yanzu buɗe fayil ɗin \myprogram ta amfani da duk wani editan rubutu da kuke so, sannan ƙara lambar da ke gaba gare shi.

#!/bin/bash 

GTKDIALOG=gtkdialog 
export MAIN_DIALOG=' 

<window title="My First Program" icon-name="gtk-about" resizable="true" width-request="300" height-request="310"> 

<vbox> 
	<hbox space-fill="true" space-expand="true"> 
		<button>	 
			<label>Welcome to TecMint.com Home!</label> 
			<action>echo "Welcome to TecMint.com Home!"</action> 
		</button> 
	</hbox> 
</vbox> 
</window> 
' 

case $1 in 
	-d | --dump) echo "$MAIN_DIALOG" ;; 
	*) $GTKDIALOG --program=MAIN_DIALOG --center ;; 

esac 
------------

Ajiye fayil ɗin, kuma saita aiwatar da izini kuma gudanar da shi kamar yadda aka nuna.

$ chmod 755 myprogram
$ ./myprogram

Wannan shine yadda shirinku na farko ya ƙirƙira da aiwatar da shi ta amfani da gtkdialog.

Yanzu, za mu yi bayanin lambar a takaice.

  1. #!/bin/bash: Layin farko na kowane rubutun harsashi, ana amfani da shi don tantance hanyar harsashi.
  2. GTKDIALOG = gtkdialog: Anan mun fayyace ma'anar canji don amfani da shi daga baya lokacin aiwatar da rubutun harsashi tare da gtkdialog, wannan layin dole ne ya kasance cikin duk rubutun da kuka kirkira ta amfani da gtkdialog.
  3. export MAIN_DIALOG=: Wani canjin da muka ayyana wanda zai ƙunshi duk syntax don ƙirar mu, zaku iya maye gurbin MAIN_DIALOG da kowane sunan da kuke so, amma kuma dole ne ku maye gurbinsa a cikin layukan 4 na ƙarshe na rubutun.
  4. Taken Window: Ba na jin cewa wannan lambar tana buƙatar bayanin, mun ƙirƙiri take, gunkin tsoho don taga, mun zaɓi idan an sake girmanta ko a'a, kuma mun bayyana. fadin da tsayin da muke so, ba shakka duk waɗancan zaɓuɓɓukan na biyu ne, kawai kuna iya amfani da alamar idan kuna so.
  5. : Muna amfani da alamar vbox don ƙirƙirar akwati a tsaye, yana da mahimmanci a ƙirƙiri alamar vbox don ƙunshi wasu tags kamar hbox da button, da sauransu.
  6. : Anan mun ƙirƙiri akwatin kwance ta amfani da alamar , \space-fill da \space-expand zaɓi ne don faɗaɗa hbox ta taga.
  7. : Wannan shi ne tsohowar rubutu na maɓalli, mun rufe alamar ta amfani da , ba shakka yana da mahimmanci a rufe duk tags ɗin da muke amfani da su.< /li>
  8. : Wannan abin zai faru lokacin da aka danna maballin, zaku iya gudanar da umurnin harsashi idan kuna so ko aiwatar da kowane fayil idan kuna so, akwai wasu ayyuka da sigina da yawa kuma. , kar a manta da rufe shi ta amfani da .
  9. : Don rufe alamar maballin.
  10. : Don rufe alamar hbox.
  11. : Don rufe alamar taga.

Layukan 4 na ƙarshe dole ne su kasance a cikin duk rubutun harsashi waɗanda kuka ƙirƙira ta amfani da gtkdialog, suna aiwatar da madaidaicin MAIN_DIALOG ta amfani da umarnin gtkdialog tare da zaɓin tsakiya don tsakiyar taga, da amfani sosai a zahiri.

Hakazalika, ƙirƙiri wani fayil kuma kira shi a matsayin 'shiri na biyu' kuma ƙara waɗannan abubuwan gabaɗaya zuwa gare shi.

#!/bin/bash 

GTKDIALOG=gtkdialog 
export MAIN_DIALOG=' 

<window title="My Second Program" icon-name="gtk-about" resizable="true" width-request="250" height-request="150"> 

<vbox> 
	<hbox space-fill="true"> 
		<combobox>	 
			<variable>myitem</variable> 
			<item>First One</item> 
			<item>Second One</item> 
			<item>Third One</item> 
		</combobox> 
	</hbox> 
	<hbox> 
		<button> 
			<label>Click Me</label> 
			<action>echo "You choosed $myitem"</action> 
		</button> 
	</hbox> 
<hseparator width-request="240"></hseparator> 

	<hbox> 
		<button ok></button> 
	</hbox> 
</vbox> 
</window> 
' 

case $1 in 
	-d | --dump) echo "$MAIN_DIALOG" ;; 
	*) $GTKDIALOG --program=MAIN_DIALOG --center ;; 

esac

Ajiye fayil ɗin, saita aiwatar da izini akansa kuma gudanar da shi kamar yadda aka nuna.

$ chmod 755 secondprogram
$ ./secondprogram

Yanzu, za mu yi bayanin lambar a takaice.

  1. Muna ƙirƙirar widget ɗin combobox ta amfani da , alamar ita ce tsohuwar sunan canjin wanda zaɓaɓɓen abin da za a adana a ciki, mun yi amfani da wannan canjin don buga abin da aka zaɓa daga baya ta amfani da echo.
  2. >
  3. shine mai raba kwance a kwance, zaku iya saita tsohowar nisa ta amfani da zaɓin buƙatun faɗin.
  4. Maballin Ok ne wanda zai rufe taga daidai lokacin da ka danna shi, yana da amfani sosai don haka ba ma buƙatar ƙirƙirar maɓallin al'ada don yin. cewa.

Ƙirƙiri wani fayil da ake kira 'program na uku'kuma ƙara dukan gunkin lambar zuwa gare shi.

#!/bin/bash 

GTKDIALOG=gtkdialog 
export MAIN_DIALOG=' 

<window title="My Second Program" icon-name="gtk-about" resizable="true" width-request="250" height-request="150"> 

<notebook tab-label="First | Second|"> 
<vbox> 
	<hbox space-fill="true"> 
		<combobox>	 
			<variable>myitem</variable> 
			<item>First One</item> 
			<item>Second One</item> 
			<item>Third One</item> 
		</combobox> 
	</hbox> 
	<hbox> 
		<button> 
			<label>Click Me</label> 
			<action>echo "You choosed $myitem"</action> 
		</button> 
	</hbox> 
<hseparator width-request="240"></hseparator> 

	<hbox> 
		<button ok></button> 
	</hbox> 
</vbox> 

<vbox> 

	<hbox space-fill="true"> 
		<text> 
		<label>Spinbutton </label> 
		</text> 
	</hbox> 

	<hbox space-fill="true" space-expand="true"> 
		<spinbutton range-min="0" range-max="100" range-value="4"> 
			<variable>myscale</variable> 
			<action>echo $myscale</action> 
		</spinbutton> 
	</hbox> 

	<hbox> 
		<button ok></button> 
	</hbox> 

</vbox> 
</notebook> 
</window> 
' 

case $1 in 
	-d | --dump) echo "$MAIN_DIALOG" ;; 
	*) $GTKDIALOG --program=MAIN_DIALOG --center ;; 

esac

Ajiye fayil ɗin, ba da izinin aiwatar da izini kuma kunna shi kamar yadda aka nuna.

$ chmod 755 thirdprogram
$ ./thirdprogram

Anan, bayanin lambar a cikin mafi cikakken salon.

  1. Mun ƙirƙiri shafuka biyu na littafin rubutu ta amfani da , zaɓin alamar tab shine inda zaku iya ƙirƙirar shafuka, gtkdialog zai ƙirƙiri tabs dangane da lakabin da kuka shigar, kowane an bayyana shi azaman tab, don haka shafin farko. yana farawa da na farko, shafin na biyu yana farawa da na biyu.
  2. widget din rubutu ne, mun yi amfani da alamar
  3. tag zai haifar da sabon maɓallin juyi, zaɓin zangon-min shine mafi ƙarancin ƙima, kuma kewayon-max shine matsakaicin ƙimar maballin juyi, ƙimar-ƙimar ita ce tsohuwar ƙimar. don maɓallin juyawa.
  4. Mun ba da m myscale zuwa .
  5. Mun buga ƙimar da aka zaɓa ta amfani da echo da $myscale variable, siginar tsoho don aikin anan shine “canza darajar” wanda ya taimaka mana yin hakan.

Wannan tagar misali ce kawai, zaku iya ƙirƙirar hanyoyin sadarwa masu rikitarwa ta amfani da gtkdialog idan kuna so, zaku iya bincika takaddun hukuma a cikin gidan yanar gizon gtkdialog don duba duk alamun gtkdialog daga mahaɗin da ke ƙasa.

Takardun Gtkdialog

Shin kun yi amfani da gtkdialog don ƙirƙirar GUIs don rubutun harsashi a baya? Ko kun yi amfani da irin wannan kayan aiki don ƙirƙirar musaya? Me kuke tunani akai?