Almal van die programme in Vala en GTK + het ons ooit afgevra hoe om 'n aansoek wat in Vala en GTK + geskryf is, in staat te stel om die toestande van die venstergrootte-parameters en ander te red? Dit is van hierdie tipiese gevalle wat ons gebruik gskemas om hierdie waardes (hierdie bekende toepassing dconf-editor) wat hierdie skemas grafies bestuur, te stoor.
Nou wys ek u hoe u dit in eenvoudige stappe en sonder komplikasies met die Granite.Services.Settings-klas uit die Granite-biblioteek kan doen.
Wat het ons nodig?
Eerstens moet ons die GTK +, Granite en Vala biblioteke installeer om ons kode saam te stel. Om dit in Ubuntu / ElementaryOS te doen, gebruik ons die opdrag:
sudo apt-get install libgtk-3-dev libgranite-dev granite-demo valac
En ons het ook 'n teksredigeerder nodig wat Vala / GTK + en XML-sintaksis ondersteun, soos Scratch Text Editor (standaard ElementOS), GEdit, Sublime Text + Plugins, ens.
Die kode
Hier is die voorbeeldlêers. Om 'n beter begrip te kry, laat ek die kode in PASTE met kommentaar daarin:
Verduidelikings
Die skemalêer, indien of as dit XML moet wees en ORG.APLICACION.GSCHEMA.XML moet heet. Dit wil sê dat beide die ORG en GSCHEMA.XML daar moet wees om dconf dit as 'n skema te kan herken. Daarbenewens moet hierdie diagramme na die roete gekopieër word:
/usr/share/glib-2.0/schemas/
en hulle moet saamgestel word om DCONF te neem, hiervoor voer ons die opdrag uit:
sudo glib-compile-schemas /usr/share/glib-2.0/schemas/
Opstel
Om ons program saam te stel, moet ons die volgende opdrag in 'n terminale begin:
valac --pkg gtk+-3.0 --pkg granite main.vala tutorial.vala settings.vala
En voer die binêre uit met die opdrag:
./main
Gevolgtrekkings
Dit is een van die beste metodes om die toestand van ons APP in GSCHEMA met GLIB te red. Ek sal graag enige vrae beantwoord.
Hier is 'n kiekie van my Ubuntu en die voorbeeld:
3 kommentaar, los joune
Goeie artikel, 'n paar GTK-tutoriale in C ++ is goed. Dinge het baie verander, die amptelike GTK-webwerf beveel boeke uit 2002 aan, ek het die fout gemaak om dit te koop.
DevHelp help meer as enige boek.
Jammer ek bedoel C, nie C ++ nie. As ek die kodeblokkies oopmaak, kies ek altyd 'n projek in C ++ ', maar ek programmeer in C.
Goeie tuto, ek wil graag weet en ek weet dat dit nie die geval is nie, maar in werklikheid het ek myself genoeg kophoue gegee om hierdie benadering te kan uitvoer, ek moet die agtergrond en die aanmeldskerm aanpas met 'n institusionele beeld van waar ek in die spanne van die gebruikers, hulle het 'n Venezolaanse distro genaamd Canaima, gebaseer op Debian 7 Wheezy, gebruikers verifieer via LDAP en verskeie gebruikers kan op dieselfde rekenaar werk, dus kan dit so wees dat daar verskeie sessies is waarin hulle moet Die eienaar van die agtergrond is dat die spanne volgens die teks aangepas word om die werk van die tegnici te vergemaklik.
Ek het met instellings probeer, maar dit werk net met die gebruiker wat aanmeld, blykbaar stoor dit die inligting in 'n plaaslike databasis per gebruiker wat ek nog nie bereik het nie. Ek is op soek na 'n konfigurasie wat van toepassing is op die hele stelsel en nie op een gebruiker nie.
Dit is die moeite werd om te noem dat die beeld voortdurend verander as gevolg van nasionale datums en enige ander rede, dus dit is nie net 'n beeld nie, dit word deur die poppemeester na elke kliënt gelaai.
Ek het geen idee of so iets op my geval toegepas kan word nie.
Groete.