![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| aromanu |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 4.6.2009 Репутация: нет Всего: нет |
Всем доброго времени суток. Задали курсач. Решил выделиться и сделать его на Java. Java я не знаю, поэтому достал книгу, зашел на Google и начал писать курсач по мере изучения языка. Пишу два дня, через неделю надо закончить. ТЗ следующее: сделать имитацию ландшафта с помощью класса "столбик". Я создал класс myFrame, суперкласс для myFrame это JFrame. Далее в конструкторе инициализировал фрэйм(контейнер для последующего размещения там графических компонентов). Затем создал класс aloft, суперкласс для aloft это JComponent, там прописал рисование "столбика".
Мне нужно чтобы во фрэйме можно было размещать этих объектов сколько угодно, а у меня вырисовывается только последний. Где моя ошибка, и еще есть какие нибудь методы позволяющие размещать компоненты во фрэйме. Вот код:
|
|||
|
||||
| AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 10 Всего: 118 |
||||
|
||||
| aromanu |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 4.6.2009 Репутация: нет Всего: нет |
У нас есть класс "столбик" один из его методов рисует сам столбик http://s44.radikal.ru/i103/0906/9a/9286e925a6bb.png.
И с помощью этих "столбиков" нужно имитировать 3d-поверхность. Как это сделать я еще не придумал.(Точнее есть 2 идеи, только не знаю как реализовать на Java, надо еще гуглить. 1) Регулировать "столбики" по высоте. Опять же надо достать где нибудь функцию(математическую) 2)Это возвышения представлять в более светлых тонах, а впадины в более темных. Если есть еще какой нибудь способ, то буду вам очень признателен). Но суть в том что для реализации вышесказанного надо что бы в форме находилось достаточно много столбиков, а у меня не получается это делать: в форме отображается только один компонент, последний добавленный. В чем я накосячил? |
|||
|
||||
| math64 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 5 Всего: 72 |
JFrame по умолчанию имеет BorderLayout, т.е. можно вставить только 5 компонентов - по одному по краям и один в центр. Можно поменять Layout, но лучше вставить в центр JPanel c нужным Layout. Но какой Layout нужен непонятно, потому что непонятно как нужно размещать "столбики".
Например: GridLayout разместит их в сетку, выделив каждому одинаковую площадь. GridBagLayout позволит разместить их как угодно |
|||
|
||||
| aromanu |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 4.6.2009 Репутация: нет Всего: нет |
"столбики" нужно размещать по следующему принципу: Рисуем первую строку "столбиков", а во второй строке "столбики" могут начинаться только там где кончается предыдущий, то есть они располагаются один над другим и тот "столбик", который на верху начинается там, где заканчивается нижний(высота нижнего). Поэтому я думаю, что подойдет GridBagLayout. А как это реализовать? |
|||
|
||||
| aromanu |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 4.6.2009 Репутация: нет Всего: нет |
Вставил в JFrame JPanel и попробовал вставить компонент. Ничего не вышло, он его не рисует.
Добавлено через 48 секунд Изменения выделены желтым |
|||
|
||||
| aromanu |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 4.6.2009 Репутация: нет Всего: нет |
Да кто нибудь может показать как во фрэйме разместить n-ое количество компонентов, которые являются наследниками класса JComponent
|
|||
|
||||
| Galaran |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 91 Регистрация: 25.5.2009 Репутация: нет Всего: 2 |
Можно размещать компоненты и без менеджера компоновки (произвольно, по координатам)
А именно:
|
|||
|
||||
| aromanu |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 4.6.2009 Репутация: нет Всего: нет |
Все сделал как вы сказали - безрезультатно.
|
|||
|
||||
| math64 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 5 Всего: 72 |
Наверно,лучше сделать Aloft иконкой:
|
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |