|
|
|
Отображение панелей во фрейме26.06.2019, 14:52. Показов 2409. Ответов 13
Метки нет (Все метки)
В общем-то, есть программа, во фрейме которой лежат объекты, которые можно перетаскивать с помощью мыши. Объекты эти представляют собой класс, расширяющий JPanel, все лежат в другой панели, в которой дефолтный layout (FlowLayout вроде как ставится по умолчанию у панелей). Ну и собсна, в чём вопрос. Панельки перекрывают друг-друга в порядке добавления во фрейм, т.е. первая добавленная перекрывают вторую, вторая перекрывает третью и т.д.
Как я понимаю, они слоями добавляются. Но вот можно ли как-то так сделать, чтоб когда пользователь кликал мышью по панельке, она выводилась на передний план?
0
|
|
| 26.06.2019, 14:52 | |
|
Ответы с готовыми решениями:
13
Swing, отображение JMenu на фрейме
Поочередное отображение панелей |
|
296 / 149 / 67
Регистрация: 22.02.2017
Сообщений: 592
|
|
| 26.06.2019, 17:26 | |
|
в каждом своем ответе я призываю применять JLayeredPane, и только его, но никто не слушает, все ведь книжки читают.
Почитайте про: moveToFront(); moveToBack(); getPosition(); setPosition(); Здесь все что нужно что иметь контроль, нет, иметь полную власть над уровнями объектов.
1
|
|
|
296 / 149 / 67
Регистрация: 22.02.2017
Сообщений: 592
|
|
| 26.06.2019, 17:31 | |
|
Как видно на картинках персонаж может заходить за предметы или наоборот быть на первом плане
0
|
|
|
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
|
||||||
| 26.06.2019, 22:42 | ||||||
|
Gungala,
1
|
||||||
|
296 / 149 / 67
Регистрация: 22.02.2017
Сообщений: 592
|
||||||
| 26.06.2019, 23:47 | ||||||
|
глупо, а если объекты разные ? Называется голь на выдумки хитра, есть такой замечательный ресурс JLayeredPane, почему вы его игнорируете ? Вот пример как можно менять уровни по индексу, хоть пачками хоть сотнями любых размеров форм и расцветок. Зачем вам костыли когда есть феррари ?
с JLayeredPane можно менять положение всех объектов которые добавлены в него, кнопки панели и прочее.
1
|
||||||
|
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
|
|
| 27.06.2019, 01:48 | |
|
Nidl, поосторожнее на поворотах, Милейший. Почитайте, что такое ZOrder в GUI философии в целом. Потом почитайте, что такое индекс (о котором Вы говорили, но однозначно не знаете, что это такое). А в конце, пересмотрите код, и обратите хорошенько внимание на линию 14.
0
|
|
|
296 / 149 / 67
Регистрация: 22.02.2017
Сообщений: 592
|
|
| 27.06.2019, 08:14 | |
|
Kukstyler, Уважаемый вы видели мои скриншоты сверху ? вот этот как вы выразились "индекс" о котором я ничего не знаю на примере данной игры создает полностью управляемую вселенную объектов, все в игре 4 основных слоя и в каждом слое от 5 до тысячи индексов которые без моего вмешательства в потоке создают полную иллюзию правильного расположения всех объектов, можно прятаться за деревья, башни, дома и все это постоянно через код обрабатывается перетасовыя как колоду уровни в зависимости от того как это нужно персонажу, в коде я не путаюсь, я создал редактор уровней который создает графическую часть и кусок кода который я просто вставляю в основной код копипастом.
мне в корне вообще не интересно что такое ZOrder, я из старой школы и начинал с древнего ассемблера, добравшись до Java GUI я перешагнул за полтора десятков языков программирования, я делаю игры и только игры, остальное неинтересно либо довесок, мои игры на 80% состоят и высшей математики и геометрии. я не отрицаю что вы много наверное книжек прочитали но добрую половину библиотек и классов я с прекрасным успехом заменил математикой сам которая является универсальным знанием во всех языках. Книг по джава я не читал мне не интересен этот копипаст, я выдел для себя список что мне нужно знать в совершенстве что бы игры делать и на джава и тщательно изучил эти моменты. Мои знания это около 1,5 к всяческих графических эффектов и трюков наработанных десятилетиями, я начинал когда 3D был не класс а математическая теорема Пифагора. И мне не понятна ваша претензия хотя бы в том что JLayeredPane это ендинственный инструмент управления слоями в java GUI отвечающий всем потребностям, и почему вы игнорите правильный не оспаримый ответ. Добавлено через 33 минуты Из любопытства я взглянул на описание ZOrder, это старая технология AWT, уже после этого читать стало не интересно, но все же еще раз посмотрел, имеет ряд проблем которые создают баги с размерами объектов, не работает с менеджерами раскладки, вообще внимания не стоит, не удивительно что при поиске информации управления уровнями о нем сейчас не упоминания учитывая что есть JLayeredPane.
0
|
|
|
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
|
|||||
| 27.06.2019, 23:06 | |||||
Это Вы так поняли мою "претензию"? ZOrder не является понятием из Java, а из общей "философии GUI". Моя единственная претензия к Вам - не говорите, что кто-либо говорит глупости, если у Вас нет на это чёткой и обоснованной аргументации. Не зная чти такое ZOrder - у Вас её быть просто не может. В любом случае, предлагаю закругляться с флудом.
0
|
|||||
| 27.06.2019, 23:11 [ТС] | |
|
0
|
|
|
296 / 149 / 67
Регистрация: 22.02.2017
Сообщений: 592
|
||||||
| 28.06.2019, 00:19 | ||||||
|
Игра приводилась как яркий пример применения смены уровней, более яркого примера чем игровые миры для этой задачи придумать нельзя.
-ZOrder не является понятием из Java, а из общей "философии GUI". - вы серьезно ? Не знал что это "setComponentZOrder" возвели в культ я признаю только одну философию, это математика, а точнее ее раздел геометрия, все остальное считаю дорогой в никуда. Языки программирования с их библиотеками и классами умирают пачками а математика одинакова применима в любом языке программирования. У зацикленных пользователей на бесполезных копипаст книжках уже трудности с многими вещами которые раньше делались парочкой формул, сейчас вы ищете библиотеку или класс, еще и мнимую философию приплели. Автору был дан лучший ответ по управлению уровней, пусть сам решает, следовать к новым лучшим проектам или поклоняться вашему ZOrder. Пример хорошего спорт кара, объектов можно сделать сколько хотите.
0
|
||||||
|
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
|
||
| 28.06.2019, 20:48 | ||
Слушайте, не надо нам рассказывать Ваши сны! Никто никуда ничего не возводил. Либо Вы пытаетесь "троллиться", либо перепутали таблетки - хорошо читайте проспекты, а так-же, прежде, консультируйтесь с врачом либо фармацевтом.
0
|
||
|
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
|
|
| 28.06.2019, 22:16 | |
|
0
|
|
|
2738 / 2047 / 507
Регистрация: 17.02.2014
Сообщений: 9,465
|
||
| 11.07.2019, 12:59 | ||
|
0
|
||
| 11.07.2019, 12:59 | |
|
Помогаю со студенческими работами здесь
14
Отображение другого сайта во фрейме
PyQt5 | Отображение виджета во фрейме Смещенное отображение прямоугольника во фрейме Отображение содержимого во фрейме с прокруткой Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes.
А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения
развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам
Кирхгофа, решает её и находит:
токи, напряжения и их 1 и 2 производные при t = 0;. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
|
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|