![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Амортизатор |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 17.4.2005 Где: в Караганде Репутация: нет Всего: 8 |
Подскажите, как создать в апплете класс, который мог бы сам обрабатывать события (аналог виндового окна), т е что выбрать за базовый класс. Мне нужно реализовать в апплете интерфейс (за что отвечает отделный класс). Как-то не хочется обрабатывать и прорисовывать в классе апплета, хорошо бы снадбить этим тот самый интрфейсный класс.
Добавлено @ 23:05 Как варианты: 1) Понаследовать от Applet (можно ли?) 2) Применить внутри апплета другой апплет (т е менющку импортнуть). Можно ли? -------------------- Поехали! |
|||
|
||||
| batigoal |
|
||||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 3 Всего: 151 |
Можно. Обычно так и делается.
Может быть, и можно, но наверняка не стоит. Лучше использовать внутри апплета JPanel, либо другой свинговый компонент (ну и своих наследников от этих компонентов). -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
||||
|
|||||
| Амортизатор |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 17.4.2005 Где: в Караганде Репутация: нет Всего: 8 |
Спасибо. Вопрос вдогонку - можно ли импортнуть в .class файл ресурс (битмап например) как в exe-ник?
Иль придется ограничиться пакиджем? -------------------- Поехали! |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 9 Всего: 538 |
В class файл ничего кроме кода нельзя добавить (вернее можно, но так лучше не делать). Все ресурсы лучше добавить в JAR, это и будет аналог exe-ника. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Амортизатор |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 17.4.2005 Где: в Караганде Репутация: нет Всего: 8 |
Спасибо всем.
-------------------- Поехали! |
|||
|
||||
| Амортизатор |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 17.4.2005 Где: в Караганде Репутация: нет Всего: 8 |
Окно второго класса не запускается!
s.show() - не помогает. Напоминаю, этот класс производен от Applet и создается в другом классе-апплете. -------------------- Поехали! |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 9 Всего: 538 |
Апплет это не окно, и просто так его показать нельзя. Нельзя из Java открыть новое окно браузера и показать в нем апплет. Если тебе нужно окно то создай Frame или JFrame и уже у них вызывай show().
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Амортизатор |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 17.4.2005 Где: в Караганде Репутация: нет Всего: 8 |
Мне нужно сделать следующее.
Я не знаю, как это сделано тут, но при программировании под винду можно апи-функциями создать дочернее окно (используя хендл главного окна). Можно задать ему определенный стиль - это поддерживается самой Windows и реализуется опять таки апи-функциями. Например, без рамки. Или, напрмер, в MFC наследуем от CWnd и готово окно. Как сделать тоже самое тут? Мне нужно окно без всяких рамочек и заголовков. Окно я сделал (наследник - JFrame) но оно не того стиля. З Ы Извиняюсь за бестолковые вопросы, Java юзаю только несколько дней, нужно быстро сделать апплет. Это сообщение отредактировал(а) Амортизатор - 16.11.2005, 21:05 -------------------- Поехали! |
|||
|
||||
| LSD |
|
||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 9 Всего: 538 |
Окно без "оформления" создается так:
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||
|
|||||
| Амортизатор |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 17.4.2005 Где: в Караганде Репутация: нет Всего: 8 |
Это не совсем то. Мне видишь ли надо, чтобы окно было частью интерфейса, а не существовало отдельно. Короче надо, чтобы окно вело себя как типичные окна Windows - кнопки, менюшки и др. контролы. А то сворачиваешь браузер, а окно остается... Оно отдельно от браузера и апплета, из которого вызывается, а надо, чтобы оно "лежало" на нем.
-------------------- Поехали! |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 9 Всего: 538 |
Не понимаю. Апплет это часть веб страницы, тебе надо чтобы окно отображалось внутри апплета? -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Амортизатор |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 17.4.2005 Где: в Караганде Репутация: нет Всего: 8 |
Говоря другим языком, мне надо написать контрол - меню для апплета. Не контрол-апплет, а контрол ДЛЯ АППЛЕТА. Т е сам апплет предназначен для других задач, в нем есть класс-менюшка. Надо, чтобы этот класс создал окно, принадлежащее апплету, итз которого вызывается. Говоря окно, я использую терминологию винды, может это у вас как то по другому называется. В Windows любой контрол создает свое собственное окно, в котором прорисовывется. Мне нужно тоже самое для апплета.
-------------------- Поехали! |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 9 Всего: 538 |
Я все равно не понимаю Ты или приведи некий пример поведения, который можно посмотреть или опиши какое поведение тебе требуется от окна. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| Амортизатор |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 17.4.2005 Где: в Караганде Репутация: нет Всего: 8 |
Хорошо.
Рассмотрим Windows-приложение. Вот мы создаем функцией Create окно. Это в общем случае - главное окно приложения. Предположим, мы хотим написать свой компонент-меню, который затем разместим на главном окне. Как это делается? Очень просто. Вызываем апи-функцию, и создаем для нашего главного окна ДОЧЕРНЕЕ окно. Дочернее окно полностью автномно в том смысле, что само себя отрисовывает в ответ на сообщение WM_PAINT, может само перехватывает сообщения от системы. Ну, мы рисуем в этом окне кнопочки, можем задать если требуется форму окна. Таким образом наш компонент - кнопочка там или меню - это обыкновенное дочернее окно Windows. Так вот, мне нужно то же самое! К примеру, хотим сделать апплет. Предположим, предназначенный для показа изображений. Нам нужно создать менюшку и разместить ее на апплете. Нажал на одну - показывается одно изображение и т д. Конечно, я мог бы нарисовать эту менюху прямо на апплете, однако тогда пришлось бы, во первых, отрисовывать и обрабатывать сообщения прямо в окне главного апплета, во вторых, не так просто будет эту менюху затем перенести в другой апплет. Поэтому я хочу создать меню в ДРУГОМ окне, дочернем по отношению к главному окну апплета. Можно ли это сделать? То что мне пока удалось сделать - это создать окно, независимое от апплета. Наприсмер, сворачиваем браузер, а это окно прдолжает висеть в воздухе. -------------------- Поехали! |
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 3 Всего: 151 |
Все значительно проще, как я понял - надо просто сделать меню, и добавить его в окно апплета.
А у нас это - просто компонент, и не более того. Он автономен сам по себе. Это сообщение отредактировал(а) Lamer George - 17.11.2005, 22:30 -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Апплеты | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |