Gtkdialog - Búðu til grafísk (GTK+) tengi og svarglugga með því að nota skeljaforskriftir í Linux


Gtkdialog (eða gtkdialog) er opinn uppspretta sniðugt tól til að búa til og byggja upp GTK+ tengi og valglugga með hjálp Linux skeljaforskrifta og nota GTK bókasafn, auk þess að nota xml-lík setningafræði, sem gerir auðvelt að búa til viðmót með gtkdialog. Það er mjög svipað frægasta tólinu sem kallast Zenity, en það kemur með nokkrum gagnlegum sérsniðnum eiginleikum sem gera þér kleift að búa til margar búnaður eins og vbox, hbox, hnapp, ramma, texta, valmynd og margt fleira.

Lestu líka : Búðu til grafíska GTK+ glugga með Zenity

Uppsetning Gtkdialog í Linux

Þú getur halað niður gtkdialog-0.8.3 (sem er nýjasta útgáfan) eða þú getur líka notað wget skipunina, pakkað niður skránni og keyrt eftirfarandi skipanir til að safna saman frá uppruna.

$ 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

Nú skulum við byrja að búa til nokkra kassa, búa til nýtt \myprogram forskrift í heimamöppunni þinni.

$ cd
$ touch myprogram

Opnaðu nú \myprogram skrána með því að nota hvaða textaritil sem þú vilt og bættu eftirfarandi kóða við hana.

#!/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 
------------

Vistaðu skrána og stilltu keyrsluheimildina og keyrðu hana eins og sýnt er.

$ chmod 755 myprogram
$ ./myprogram

Svona var fyrsta forritið þitt búið til og keyrt með gtkdialog.

Nú munum við útskýra kóðann í stuttu máli.

  1. #!/bin/bash: Fyrsta línan í hvaða skeljaforskrift sem er, hún er notuð til að tilgreina bash skel slóðina.
  2. GTKDIALOG = gtkdialog: Hér skilgreindum við breytu til að nota hana síðar þegar skeljaforskriftin er keyrð með gtkdialog, þessi lína verður að vera í öllum forskriftum sem þú býrð til með gtkdialog.
  3. flytja út MAIN_DIALOG=: Önnur breyta sem við skilgreindum sem mun innihalda alla setningafræði fyrir viðmótið okkar, þú getur skipt út MAIN_DIALOG með hvaða nafni sem þú vilt, en þú verður að skipta um hana líka í síðustu 4 línum handrit.
  4. Titill glugga: Ég held að það þurfi ekki að útskýra þennan kóða, við bjuggum til titil, sjálfgefið tákn fyrir gluggann, við veljum hvort hægt væri að breyta stærð hans eða ekki, og við skilgreindum breidd og hæð sem við viljum, auðvitað eru allir þessir valkostir aukaatriði, þú getur bara notað merkið ef þú vilt.
  5. : Við notum vbox merkið til að búa til lóðréttan kassa, það er mikilvægt að búa til vbox tag til að innihalda önnur merki eins og hbox og button o.s.frv.
  6. : Hér bjuggum við til láréttan kassa með því að nota merkið, \space-fill og \space-expand“ eru valkostir til að stækka hboxið í gegnum gluggann.
  7. : Þetta er sjálfgefinn texti fyrir hnappinn, við lokuðum merkismerkinu með , auðvitað er mjög mikilvægt að loka öllum merkjum sem við notum.< /li>
  8. : Þetta gerist þegar smellt er á hnappinn, þú getur keyrt skeljaskipun ef þú vilt eða framkvæmt einhverja aðra skrá ef þú vilt, það eru margar aðrar aðgerðir og merki líka , ekki gleyma að loka því með .
  9. : Til að loka hnappamerkinu.
  10. : Til að loka hbox merkinu.
  11. : Til að loka gluggamerkinu.

Síðustu 4 línurnar verða líka að vera í öllum skeljaforskriftum sem þú býrð til með gtkdialog, þær framkvæma MAIN_DIALOG breytuna með því að nota gtkdialog skipunina með –center valkostinum til að miðja gluggann, mjög gagnlegt í raun.

Á sama hátt skaltu búa til aðra skrá og kalla hana sem „annað forrit“ og bæta eftirfarandi öllu innihaldi við hana.

#!/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

Vistaðu skrána, settu framkvæmdaleyfi á hana og keyrðu hana eins og sýnt er.

$ chmod 755 secondprogram
$ ./secondprogram

Nú munum við útskýra kóðann í stuttu máli.

  1. Við búum til combobox græju með , merkið er sjálfgefið heiti breytunnar sem valinn hlutur verður geymdur í, við notuðum þessa breytu til að prenta valið atriði síðar með echo.
  2. er lárétt skilja, þú getur stillt sjálfgefna breidd fyrir það með því að nota breiddarbeiðni.
  3. er OK hnappur sem lokar glugganum bara þegar þú smellir á hann, hann er mjög gagnlegur svo við þurfum ekki að búa til sérsniðna hnapp til að gera það.

Búðu til aðra skrá sem kallast „þriðja forrit“ og bættu öllum kóðanum við hana.

#!/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

Vistaðu skrána, veittu framkvæmdaleyfi og ræstu hana eins og sýnt er.

$ chmod 755 thirdprogram
$ ./thirdprogram

Hér er útskýring á kóða í nákvæmari hætti.

  1. Við bjuggum til tvo glósubókarflipa með því að nota , flipamerki valkosturinn er þar sem þú getur búið til flipa, gtkdialog mun búa til flipa eftir því hvaða merki þú slærð inn, sérhver er skilgreindur sem flipi, svo fyrsti flipinn byrjar á fyrsta , seinni flipinn byrjar á seinni .
  2. er textagræja, við notuðum merkið
  3. merkið mun búa til nýjan snúningshnapp, range-min valkostur er lágmarksgildi og range-max er hámarksgildi fyrir snúningshnappinn, range-gildi er sjálfgefið gildi fyrir snúningshnappinn.
  4. Við gáfum breytu „myscale“ til .
  5. Við prentuðum valið gildi með því að nota echo og $myscale breytu, sjálfgefið merki fyrir aðgerðina hér er „gildi breytt“ sem hjálpaði okkur að gera það.

Þetta var bara dæmi gluggi, þú getur búið til flóknari viðmót með því að nota gtkdialog ef þú vilt, þú getur skoðað opinber skjöl á gtkdialog vefsíðunni til að skoða öll gtkdialog merki frá hlekknum hér að neðan.

Gtkdialog skjöl

Hefur þú notað gtkdialog til að búa til GUI fyrir skeljaforskriftirnar þínar áður? Eða hefur þú notað eitthvað slíkt tól til að búa til viðmót? Hvað finnst þér um það?