|
[Grafika]
[WebTip]
[Fotografování]
[Galerie]
[MujMac]
[Printing]
|
|||||||||
|
|
||||||||||
|
|
|||||||||
|
Dnes se seznámíme s určitě nejdůležitějším prvkem grafických aplikací - oknem. Kostra programuUrčitě už se těšíte, až začneme vytvářet nějaké aplikace. Takže se do toho bez zbytečných okolků pustíme. Nejprve je třeba zdůraznit, že aplikace v PHP-GTK jsou samozřejmě PHP skripty, a tudíž musí být patřičně ohraničeny. Na začátek programu tedy patří <? a na konec ?>. Dále nesmíte zapomenout na nahrání potřebné knihovny. A jelikož je PHP-GTK provozovatelné na Windows i Linuxu, musíme podle operačního systému zvolit správnou knihovnu.
Pokud se vám tato podmínka zdá příliš dlouhá, můžete zkusit toto: dl('php_gtk.' . (strstr(PHP_OS, 'WIN') ? 'dll' : 'so')); Programy v GTK+ fungují tak, že se nejprve nadefinují všechny funkce a určí všechny prvky GUI, a poté se odstartuje hlavní smyčka - teprve teď aplikace "běží". Hlavní smyčka se spouští pomocí funkce Gtk::main();. Samozřejmě má tato funkce i svůj opak, kterým běžící aplikaci ukončíte - Gtk::main_quit(); Ve třídě Gtk je nadefinováno mnohem více užitečných funkcí GTK+ (kupříkladu časovače, které vám předvedu v některém z dalších dílů). Kostra programu bude vypadat přibližně takto:
Pro všechny widgety platí stejná základní pravidla. Každý widget v GTK+ projde pěti fázemi:
Základem každé grafické aplikace jsou okna (snadno to zjistíte již podle názvů Windows či XWindow). Nejinak tomu je i v PHP-GTK. Jako první vám tedy představím widget GtkWindow. V souladu s výše uvedenými pravidly vyvtvoříme nové okno příkazem $okno = &new GtkWindow();. Takto vytvořené okno si můžete dle libosti upravovat:
Tento seznam samozřejmě není úplný, obsahuje jen některé užitečné funkce. Pokud vás zajímají i další možnosti, podívejte se do manuálu GTK+ (anebo raději do manuálu PHP-GTK, až vznikne). Na definované událost je GtkWindow vcelku chudé. Jediná využitelná událost je destroy, která nastane při zavření okna - kliknutí na křížek, stisknutí Alt+F4 apod. Tato událost se tedy obvykle spojuje s ukončením aplikace, ale fantazii se meze nekladou. Můžete například vytvořit neposednou aplikaci, která při pokusu o zavření otevře další okna :-). V kostře programu jsme si nadefinovali funkci destroy(), takže zajištění ukončení aplikace je snadné: $okno->connect('destroy','destroy');. PříkladDnešní díl se nachýlil ke konci, takže si vyzkoušíme, co jsme se dnes naučili. Otevřeme okno veliké 300x100 pixelů s titulkem Moje uplne prvni okno, které se otevře uprostřed obrazovky a při ukončení poslušně skončí aplikaci. Výsledkem vašeho snažení by mělo být takovéto okno:
Nejprve si zkuste takový krátký prográmek napsat sami. Když si nebudete vědět rady nebo si budete chtít zkontrolovat svůj výtvor, stáhněte si skriptík phpgtk4.php. Těším se na shledání za týden u dalšího dílu seriálu. Příště se podívám na tlačítka a texty. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||