GUI. Проблема с перемещением картинки
Занялся написанием программы с GUI впервые, поэтому возникла проблема. Просьба наставить на путь истинный или помочь советом, ибо застрял.
Делается все в IDEA с помощью UI Designer. GUI Form - FormLayout (JGoodies). Для наглядности прилагаю картинку: http://rghost.ru/42519288/image.png Задача: переместить картинку стрелки под шкалой, в зависимости от входных данных, полученных с COM порта. Картинки реализованы в JLabel через указание icon. Нижний текст - JLabel с указанием проперти text. Перемещение картинки реализуемся через Код:
"Скачки" возникают при обновлении любого другого компонента. Например изменение картинки в другом JLabel. Перемещение картинки работает по таймеру. В результате получается, что картинка смещается, но потом снова прыгает в центр. Гуглом пользовался. Да, информация по перемещению картинки есть, но реализация для меня не совсем понятна, поэтому просьба подсказать. Код изначально не прилагаю, т.к. он больше похож на мусор с 100500 комментариев и с большим количеством закомментированных строк, т.к. пробую различные варианты реализации, но пока без толку. Добавлено через 13 часов 12 минут актуально. нужна хелпа, ибо сделать нужно в ближайшее время :( |
Re: GUI. Проблема с перемещением картинки
Путем проб и ошибок выяснилось, что "скачек" в дефолтное положение происходит после revalidate();
При этом все будет прекрасно работать, если сделать setLayout(null), но при этом, понятное дело, толку от лэаута и размещения по сетке не будет, поэтому метод топорный. Пока единственным вариантом для смещения картинки вижу Insets. |
Re: GUI. Проблема с перемещением картинки
а не пробывал типо
mainForm.getImageBottomArrow().setLocation( (int) calcBottomArrowX(degree), defY ); mainForm.getImageBottomArrow().revalidate(); mainForm.getTextInfo().setText(str); mainForm.getTextInfo().revalidate(); |
Re: GUI. Проблема с перемещением картинки
Как вариант JavaFX использовать в нем и красивее получится и проще в использовании.
|
Re: GUI. Проблема с перемещением картинки
Цитата:
Цитата:
mainForm.getImageBottomArrow().setLocation( (int)calcBottomArrowX(degree), defY ); mainForm.getImageBottomArrow().revalidate(); по сути картинка возвращается в исходное положение после revalidate любого элемента на панели. |
Re: GUI. Проблема с перемещением картинки
Цитата:
поюзайте JSlider вроде так |
Re: GUI. Проблема с перемещением картинки
Цитата:
Отпишите по контактам в профиле, помогу с javafx, быстрее будет. |
Текущее время: 18:24. Часовой пояс GMT +3. |
Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot