Tworzenie pulpitu Java z Qt Jambi

Qt Jambi to nowa i godna uwagi alternatywa dla Swing i Java 2D do tworzenia bogatych, wieloplatformowych interfejsów aplikacji desktopowych. W tym artykule współautor JavaWorld, Jeff Hanson, przedstawia niedawno wydany Qt Jambi, wyjaśnia, jak działa on pod maską, i przedstawia przykłady programowania, które zaznajomią Cię z interfejsem API typu „przeciągnij i upuść” oraz zintegrowanymi narzędziami programistycznymi.

Qt Jambi, wydany na początku czerwca 2007 r., To platforma programistyczna, która integruje język programowania Java z popularnym środowiskiem programistycznym C ++ GUI firmy Trolltech, Qt. Wydany na podstawie podwójnej licencji open source / komercyjnej, Qt Jambi umożliwia programistom Java używającym Java Standard Edition 5.0 (JSE 5.0) i późniejszych wykorzystanie funkcji platformy Qt. Wraz z przetestowaną w branży obsługą wielu platform, Qt Jambi zapewnia obsługę podstaw programowania GUI, takich jak grafika 2D i 3D, przesyłanie wiadomości o zdarzeniach typu „przeciągnij i upuść”, internacjonalizacja, dostęp do bazy danych SQL, protokoły sieciowe XML i TCP / IP. Wtyczka Qt Jambi Eclipse daje również możliwość dostępu do funkcji Qt Jambi za pomocą Eclipse.

Pobierz Qt Jambi
Qt Jambi jest oferowany na podwójnej licencji open source / komercyjnej. Możesz pobrać dowolną wersję ze strony głównej Trolltech. Wersja open source jest udostępniana na warunkach licencji GNU General Public License i nie obejmuje wsparcia ani gwarancji. Do korzystania z komercyjnej wersji Qt Jambi wymagane są projekty komercyjne.

Qt Jambi opiera się na wieloplatformowym fundamencie C ++ GUI Qt, aby ułatwić zadanie tworzenia natywnych interfejsów użytkownika dla większości platform komputerowych przy użyciu kodu Java. W związku z tym jest interesującą alternatywą dla Swing i Java 2D do programowania w języku Java. W tym praktycznym wprowadzeniu do Qt Jambi dowiesz się o API programistycznym Qt Jambi i zintegrowanych narzędziach programistycznych. Zostaniesz wprowadzony do frameworka GUI opartego na widgetach Qt Jambi i dowiesz się, jak stworzyć projekt za pomocą Qt Designer. Porównasz również mechanizm obsługi zdarzeń sygnałów i gniazd Qt Jambi ze strukturą nasłuchiwania zdarzeń Java, po raz pierwszy przyjrzysz się systemowi renderowania grafiki Qt Jambi i przekonasz się, jak integruje się z Eclipse za pośrednictwem wtyczki Qt Jambi Eclipse.

Pobierz Qt Jambi teraz, jeśli chcesz śledzić wraz z przykładami.

Przegląd Qt Jambi

Qt Jambi to platforma oparta na języku Java, która integruje międzyplatformową platformę C ++ firmy Trolltech do tworzenia graficznego interfejsu użytkownika z językiem programowania Java. Podczas tworzenia aplikacji komputerowych Java za pomocą Qt Jambi dostępne są następujące funkcje:

  • Doskonała obsługa wielu platform dla grafiki 2D i 3D
  • Unikalny mechanizm komunikacji zdarzeń między obiektami
  • Umiędzynarodowienie
  • Dostęp do bazy danych SQL
  • Wsparcie dla XML
  • Obsługa protokołów sieciowych TCP / IP

Programu Qt Jambi można używać z większością maszyn JVM (maszyn wirtualnych Java) po wersjach Java Standard Edition (JSE) 5.0 i Java Enterprise Edition (JEE) 5.0. Ścisła integracja Qt Jambi z systemem operacyjnym umożliwia tworzenie aplikacji komputerowych Java, które naśladują natywny wygląd i działanie systemu operacyjnego.

Qt spotyka się z językiem programowania Java

Interfejs API Qt Jambi zapewnia cienką warstwę kodu Java, który współdziała z natywnie skompilowanymi bibliotekami C ++ firmy Trolltech. Ta warstwa kodu Java działa w dowolnym środowisku Java Runtime Environment (JRE) i wykorzystuje środowisko Java Native Interface (JNI) do komunikacji z natywnymi bibliotekami C ++.

Zasadniczo Qt Jambi umieszcza warstwę abstrakcji Java na bibliotekach C ++ Qt. Aby rozwiązać problem podobieństwa i nakładania się klas C ++ Qt i klas podstawowych Javy, Qt Jambi mapuje nakładające się klasy C ++ na odpowiadające im klasy Javy. W rezultacie możesz używać standardowych konstrukcji i operatorów Java z natywnymi abstrakcjami Qt. Można również łączyć interfejsy API Qt Jambi z interfejsami API języka Java innymi niż Qt.

Tabela 1 przedstawia klasy Qt, które są odwzorowane na równoważne podstawowe klasy Java.

Tabela 1. Klasy Qt odwzorowane na równoważne klasy Java

Klasa Qt Klasy Java
QChar char i java.lang.Character
QHash java.util.HashMap
QList java.util.List
QMap java.util.SortedMap
QString java.lang.String
QThread java.lang.Thread
QVector java.util.List

Interfejs API Qt C ++ zależy od abstrakcyjnego typu wartości, QVariantaby hermetyzować wiele typów wartości Qt. Ponieważ język Java zapewnia już wspólny typ abstrakcyjny dla wszystkich klas (wspólną Objectklasę bazową), interfejs API Qt Jambi opiera się na Objectklasie wszędzie tam, gdzie opiera się Qt C ++ QVariant. Qt Jambi odwzorowuje wyliczenia C ++ na wyliczenia Java, aby wymusić bezpieczeństwo typów dla wyliczeń Qt-Java i flag bitowych.

Qt Jambi zawiera strukturę GUI opartą na widżetach, która wykorzystuje rozszerzenia specyficzne dla platformy, takie jak ActiveX, OpenGL i ClearType. Ta struktura zapewnia natywne możliwości wyglądu i działania dla motywów Windows, Mac OS X i Linux.

Widżety w Qt Jambi są zgodne ze składnią arkusza stylów podobną do kaskadowych arkuszy stylów HTML (CSS), dzięki czemu można dokonywać drobnych lub powszechnych dostosowań, dostosowując znaczniki i właściwości w stylu CSS. Możesz także podklasować widżety Qt, aby uzyskać jeszcze więcej możliwości dostosowania wyglądu i stylu oraz kontroli.

Struktura GUI Qt Jambi zawiera klasy zarządzania układem, które są prezentowane w narzędziu Qt Designer w celu uproszczenia układu podczas tworzenia komponentów i aplikacji pulpitu. Rysunek 1 przedstawia okno Layouts w narzędziu Qt Designer.

Struktura GUI Qt Jambi zapewnia interfejsy API do tworzenia aplikacji z dokowalnymi komponentami. Możesz użyć tej funkcji między innymi do tworzenia aplikacji komputerowych z natywnymi paskami narzędzi dokowania.