Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как создать окно используя базовые API методы Java, На подобии Win32 API под Windows 
:(
    Опции темы
zyu
Дата 23.3.2010, 02:24 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 24.10.2009

Репутация: нет
Всего: нет



Меня интересует как создать оконное приложение на Java без использования стандартных компонентных классов javax.swing.JComponent и java.awt.Component. То есть программа должна напоминать классический пример создания окна на Win32 API под Windows.
PM MAIL   Вверх
jk1
Дата 23.3.2010, 09:17 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1168
Регистрация: 17.10.2008
Где: Санкт-Петербург

Репутация: 21
Всего: 75



Цитата

должна напоминать классический пример создания окна на Win32 API под Windows. 


Берите JNA или JNI и вызывайте нативные функции Win API. Только, боюсь, радости вам этот подход не доставит. Если хотите использовать "окна на Win32 API", то лучше выберите язык, который в качестве toolkit использует этот самый WinAPI. Java для данной задачи определенно не подходит.


--------------------
Opinions are like assholes — everybody has one
PM MAIL   Вверх
zyu
Дата 23.3.2010, 11:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 24.10.2009

Репутация: нет
Всего: нет



jk1, вы малость меня не до поняли. После создания мною некоторого ряда визуальных компонент основанных на JComponent мне захотелось разобраться в основе основ их построения используя как раз предлагаемый toolkit Sun Microsystems. Другими словами хочу разобраться как построить своё окно или свою визуальную компоненту с нуля - не наследуясь от awt.Component.
Большая часть программеров используют уже готовые обёртки не понимая их внутренней реализации - именно этот пробел в своих знания я хочу заполнить.
PM MAIL   Вверх
Skynin
Дата 23.3.2010, 12:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 359
Регистрация: 1.7.2007
Где: Харьков

Репутация: нет
Всего: 10



Цитата

Большая часть программеров используют уже готовые обёртки не понимая их внутренней реализации

Это потому что если глубоко копать по каждому поводу - когда программировать то?

Для представления же о внутренней реализации AWT и поверх него Swing'а - достаточно чтения документации и книг.

Вот когда что-то непонятно, или непонятно почему оно делает не то что хочется, или когда хочется что-то эдакое, то:
Цитата
именно этот пробел в своих знания я хочу заполнить.

... очень просто - правой кнопкой открываете в IDE на JComponent - "Goto source". А там - дальше, и дальше, до 
package java.awt; 
public abstract class Component

Если JDK правильный и настроен конечно smile

Правда, на каком-то этапе столкнетесь с модификатором native
Тогда все - исходники JVM и JNA или JNI



PM MAIL WWW ICQ Skype GTalk YIM MSN   Вверх
zyu
Дата 23.3.2010, 14:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 24.10.2009

Репутация: нет
Всего: нет



А если без всяких разговоров о насущном....
Просто покажите пример визуальной компоненты не наследованной от awt.Component, разработанной с нуля, с самыми простыми свойствами ширина, высота, позиция и обработка клика мыши.
Я долго пытаюсь это сделать и ни как у меня не получается. И именно поэтому прошу помоши.
Но надо говорить, что мне придётся разрабатывать свою GUI библиотеку или что подобную компоненту не смогу запихнуть в стандартные компоненты. Про это я прекрасно всё знаю и подобных целей не предусматриваю.
PM MAIL   Вверх
COVD
Дата 23.3.2010, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 26.7.2005

Репутация: 4
Всего: 43



Цитата

хочу разобраться как построить своё окно или свою визуальную компоненту с нуля 

Для вас "нуль" почему-то Win API. Почему бы не пойти еще дальше? Есть же и другие операционные системы.  smile 
PM MAIL   Вверх
jk1
Дата 23.3.2010, 15:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1168
Регистрация: 17.10.2008
Где: Санкт-Петербург

Репутация: 21
Всего: 75



Цитата

пример визуальной компоненты не наследованной от awt.Component,

Не все так просто, как вы думаете. Component занимается и фокусом и перерисовкой и еще много чем. Есть два пути использования собственных нестандартных компонент Swing-приложении:

1) Написать наследника Component и орагнично вписать его с существующую архитектуру

2) Написать нативный компонент с помощью того же WinAPI и внедрить его в Swing-приложение с помощью DJ Native Swing

Ну а если вы напишете свое окно с нуля на WinAPI, то к Java этот эксперимент не будет иметь никакого отношения.


--------------------
Opinions are like assholes — everybody has one
PM MAIL   Вверх
dorogoyIV
Дата 23.3.2010, 16:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 26.3.2007

Репутация: 36
Всего: 46



Цитата(jk1 @  23.3.2010,  15:35 Найти цитируемый пост)
то к Java этот эксперимент не будет иметь никакого отношения

вот именно!!!
тогда вам надо будет новое название придумать вместо Java - например - zyu  smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.0494 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.