Programovanie

Vývoj desktopových aplikácií Java s Qt Jambi

Qt Jambi je novou a pozoruhodnou alternatívou k programom Swing a Java 2D na vývoj bohatých rozhraní pre rôzne platformy pre desktopové aplikácie. V tomto článku JavaWorld prispievateľ Jeff Hanson predstavuje nedávno vydané Qt Jambi, vysvetľuje, ako to funguje pod kapotou, a predstavuje príklady programovania, ktoré vás oboznámia s API a integrovanými vývojovými nástrojmi rámca.

Qt Jambi, vydané začiatkom júna 2007, je vývojový rámec, ktorý integruje programovací jazyk Java s populárnym vývojovým rámcom C ++ GUI spoločnosti Trolltech, Qt. Vydané na základe dvojitej open-source / komerčnej licencie umožňuje Qt Jambi vývojárom Java používať Java Standard Edition 5.0 (JSE 5.0) a neskôr využívať funkcie rámca Qt. Spolu s odvetvovo testovanou podporou viacerých platforiem poskytuje Qt Jambi podporu pre základy vývoja grafického používateľského rozhrania, ako sú 2D a 3D grafika, správy udalostí medzi objektmi typu drag-and-drop, internacionalizácia, prístup k databáze SQL, sieťové protokoly XML a TCP / IP. Doplnok Qt Jambi Eclipse vám tiež dáva možnosť prístupu k funkciám Qt Jambi pomocou Eclipse.

Stiahnite si Qt Jambi
Qt Jambi je ponúkaný na základe duálnej open source / komerčnej licencie. Obe verzie si môžete stiahnuť z domovskej stránky spoločnosti Trolltech. Verzia otvoreného zdroja je poskytovaná pod GNU General Public License a je dodávaná bez podpory alebo záruky. Komerčné projekty musia používať komerčnú verziu Qt Jambi.

Qt Jambi stavia na multiplatformnom základnom grafickom používateľskom rozhraní Qt Qt, ktoré uľahčuje vývoj natívnych vzhľadových a používateľských rozhraní pre väčšinu desktopových platforiem pomocou kódu Java. Preto je zaujímavou alternatívou k vývoju desktopových prostredí Swing a Java 2D. V tomto praktickom úvode do Qt Jambi sa dozviete o vývojovom API Qt Jambi a integrovaných vývojových nástrojoch. Predstaví sa vám Qt Jambiho widgetový rámec GUI a naučíte sa, ako vytvoriť projekt pomocou Qt Designer. Tiež porovnáte mechanizmus spracovania udalostí signály a sloty Qt Jambi s rámcom poslucháča udalostí Java, získate prvý pohľad na systém vykresľovania grafiky Qt Jambi a sami uvidíte, ako sa integruje s Eclipse prostredníctvom doplnku Qt Jambi Eclipse.

Stiahnite si Qt Jambi teraz, ak chcete postupovať podľa príkladov.

Prehľad Qt Jambi

Qt Jambi je rámec založený na prostredí Java, ktorý integruje multiplatformný rámec C ++ spoločnosti Trolltech pre vývoj grafického používateľského rozhrania s programovacím jazykom Java. Pri vývoji desktopových aplikácií Java s Qt Jambi sú k dispozícii nasledujúce funkcie:

  • Vynikajúca podpora viacerých platforiem pre 2D a 3D grafiku
  • Unikátny mechanizmus komunikácie medzi objektmi
  • Internacionalizácia
  • Prístup k databáze SQL
  • Podpora XML
  • Podpora sieťových protokolov TCP / IP

Qt Jambi môžete použiť s väčšinou JVM (Java virtual machines) po Java Standard Edition (JSE) 5.0 a Java Enterprise Edition (JEE) 5.0. Tesná integrácia operačného systému Qt Jambi vám umožňuje vytvárať desktopové aplikácie Java, ktoré napodobňujú vzhľad a dojem z natívneho operačného systému.

Qt spĺňa programovací jazyk Java

Rozhranie Qt Jambi API poskytuje tenkú vrstvu kódu Java, ktorá interaguje s natívne kompilovanými knižnicami C ++ spoločnosti Trolltech. Táto vrstva kódu Java beží v ľubovoľnom prostredí Java Runtime Environment (JRE) a na komunikáciu s natívnymi knižnicami C ++ používa rámec JNI (Java Native Interface).

Qt Jambi v podstate umiestňuje vrstvu Java abstrakcie nad Qt knižnice C ++. Na riešenie podobnosti a prekrývania medzi Qt triedami C ++ a základnými triedami Javy mapuje Qt Jambi prekrývajúce sa triedy C ++ do zodpovedajúcich tried Java. Vo výsledku môžete používať štandardné konštrukcie a operátory Java s natívnymi abstrakciami Qt. Môžete tiež zmiešať API Qt Jambi s API Java inými ako Qt.

Tabuľka 1 zobrazuje triedy Qt, ktoré sú mapované na ekvivalentné základné triedy Java.

Tabuľka 1. Triedy Qt mapované na ekvivalentné triedy Java

Trieda QtTriedy Java
QCharchar a java.lang.Postava
QHashjava.util.HashMap
QListjava.util.List
QMapjava.util.SortedMap
QStringjava.lang.String
QThreadjava.lang.Thread
QVectorjava.util.List

Rozhranie Qt C ++ API závisí od typu abstraktnej hodnoty QVariant na zapuzdrenie mnohých typov hodnôt Qt. Pretože jazyk Java už poskytuje spoločný abstraktný typ pre všetky triedy (bežný Objekt základná trieda), Qt Jambi API sa spolieha na Objekt triedy všade tam, kde sa spolieha Qt C ++ QVariant. Qt Jambi mapuje enumy C ++ na enumy Java s cieľom vynútiť typovú bezpečnosť pre enumy Qt-Java a bitové príznaky.

Qt Jambi obsahuje rámec GUI založený na widgetoch, ktorý využíva rozšírenia špecifické pre platformu, ako sú ActiveX, OpenGL a ClearType. Tento rámec poskytuje natívne možnosti vzhľadu a cítenia pre témy Windows, Mac OS X a Linux.

Widgety v Qt Jambi sa riadia syntaxou hárkov štýlov podobnou kaskádovým štýlom HTML (CSS), takže môžete vykonávať menšie alebo rozsiahle prispôsobenia vylepšením značiek a vlastností v štýle CSS. Môžete tiež vytvoriť podtriedu widgetov Qt, ktoré vám zabezpečia ešte lepšie prispôsobenie a kontrolu vzhľadu.

Rámec grafického používateľského rozhrania Qt Jambi obsahuje triedy riadenia rozloženia, ktoré sú prezentované v nástroji Qt Designer na zjednodušenie rozloženia pri vytváraní komponentov a aplikácií na ploche. Obrázok 1 zobrazuje okno Rozvrhnutia v nástroji Qt Designer.

Rámec GUI Qt Jambi poskytuje API pre vytváranie aplikácií s dokovateľnými komponentmi. Túto funkciu môžete okrem iného použiť na vytváranie aplikácií pre stolné počítače s natívnymi panelmi nástrojov dokovania a dojmu.

$config[zx-auto] not found$config[zx-overlay] not found