Собственный интерфейс Java AWT
![]() | В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
Собственный интерфейс Java AWT ( JAWT ) — это интерфейс для языка программирования Java , который позволяет отображать рендеринга библиотеки , скомпилированные в собственный код , для рисования непосредственно в наборе инструментов абстрактного окна Java (AWT). Canvas
Поверхность рисования объекта .
Java Native Interface (JNI) позволяет разработчикам добавлять в приложения Java функциональные возможности, зависящие от платформы . JNI позволяет разработчикам добавлять критичные по времени операции, такие как математические вычисления и 3D-рендеринг .
Раньше нативный 3D-рендеринг был сложной задачей, поскольку нативный код не имел доступа к графическому контексту. Собственный интерфейс AWT предназначен для предоставления разработчикам доступа к AWT. Canvas
для прямого рисования с помощью собственного кода. Фактически, расширение Java 3D API для стандартного Java SE JDK в значительной степени опирается на собственный интерфейс AWT для рендеринга 3D-объектов в Java.
Собственный интерфейс AWT очень похож на JNI, и шаги такие же, как и для JNI. См. статью о собственном интерфейсе Java для объяснения методов JNI, используемых в собственном интерфейсе AWT. Собственный интерфейс AWT был добавлен на платформу Java в версии J2SE 1.3 («Пустельга»).
Действия по собственному интерфейсу AWT
[ редактировать ]![]() | Эта статья содержит инструкции, советы и инструкции . ( июнь 2012 г. ) |
Полный пошаговый пример этой технологии доступен в Wikibooks (см. ссылку ниже).
Подробный пример, демонстрирующий эту технологию, доступен в Wikibooks (см. ссылку ниже).
Для начала создается Java-приложение. В статье объясняется использование собственного интерфейса Java. Нативное ключевое слово и метод loadLibrary() являются неотъемлемыми компонентами, а метод Paint() вызывается, когда поток диспетчеризации событий AWT перерисовывает экран.
После создания приложения Java обычным образом создается заголовочный файл C++. Подробные объяснения можно найти в документации по собственному интерфейсу Java.
Затем реализуется собственный код C++, обычно в файле с именем «NativeSideCanvas.cpp», и компилируется в библиотеку. Дополнительная информация об этом процессе представлена в документации Java Native Interface (JNI).
После создания программы ее можно выполнять как обычно. При запуске файла должно появиться окно, отображающее, например, нарисованный прямоугольник. Подробные инструкции можно найти в документации по собственному интерфейсу Java.
Важно отметить, что собственный интерфейс AWT требует наличия файла «jawt.dll» (или «jawt.so») для запуска вместе с приложением. Самый простой способ обеспечить это — скопировать файл «jawt.dll», который обычно находится в каталоге .../jre/bin в пути установки JDK.
Родная живопись
[ редактировать ]Можно рисовать так, как будто это родное приложение. В Windows JVM передает HWND и другую информацию об окне собственному приложению, чтобы приложение «знало», где рисовать. Он мог бы использовать GDI для рисования прямоугольника. Информация об окне, необходимая собственной стороне, будет в JAWT_Win32DrawingSurfaceInfo
структуру (в зависимости от операционной системы ), которую можно получить с помощью этой строки: dsi_win = (JAWT_Win32DrawingSurfaceInfo*)dsi->platformInfo;
Ссылки
[ редактировать ]Внешние ссылки
[ редактировать ]