Занялся написанием программы с GUI впервые, поэтому возникла проблема. Просьба наставить на путь истинный или помочь советом, ибо застрял.
Делается все в IDEA с помощью UI Designer. GUI Form - FormLayout (JGoodies).
Для наглядности прилагаю картинку:
Задача: переместить картинку стрелки под шкалой, в зависимости от входных данных, полученных с COM порта.
Картинки реализованы в JLabel через указание icon.
Нижний текст - JLabel с указанием проперти text.
Перемещение картинки реализуемся через
Проблема: если после перемещения картинки стрелки обновить другой JLabel, например текст под шкалой через mainForm.getTextInfo().setText(str); , то после обновления дрпугого JLabel изображение стрелки возвращается в исходное положение (т.е. в центр шкалы).
"Скачки" возникают при обновлении любого другого компонента. Например изменение картинки в другом JLabel.
Перемещение картинки работает по таймеру. В результате получается, что картинка смещается, но потом снова прыгает в центр.
Гуглом пользовался. Да, информация по перемещению картинки есть, но реализация для меня не совсем понятна, поэтому просьба подсказать.
Код изначально не прилагаю, т.к. он больше похож на мусор с 100500 комментариев и с большим количеством закомментированных строк, т.к. пробую различные варианты реализации, но пока без толку.
Добавлено через 13 часов 12 минут
актуально. нужна хелпа, ибо сделать нужно в ближайшее время
Делается все в IDEA с помощью UI Designer. GUI Form - FormLayout (JGoodies).
Для наглядности прилагаю картинку:
Задача: переместить картинку стрелки под шкалой, в зависимости от входных данных, полученных с COM порта.
Картинки реализованы в JLabel через указание icon.
Нижний текст - JLabel с указанием проперти text.
Перемещение картинки реализуемся через
Код:
mainForm.getImageBottomArrow().setLocation( (int) calcBottomArrowX(degree), defY );
int defY = mainForm.getImageBottomArrow().getY();
/*
Переводит значение градусов с компаса в значение координаты Х, в которое нужно установить картинку.
*/
private double calcBottomArrowX(int degree) {}
Проблема: если после перемещения картинки стрелки обновить другой JLabel, например текст под шкалой через mainForm.getTextInfo().setText(str); , то после обновления дрпугого JLabel изображение стрелки возвращается в исходное положение (т.е. в центр шкалы).
"Скачки" возникают при обновлении любого другого компонента. Например изменение картинки в другом JLabel.
Перемещение картинки работает по таймеру. В результате получается, что картинка смещается, но потом снова прыгает в центр.
Гуглом пользовался. Да, информация по перемещению картинки есть, но реализация для меня не совсем понятна, поэтому просьба подсказать.
Код изначально не прилагаю, т.к. он больше похож на мусор с 100500 комментариев и с большим количеством закомментированных строк, т.к. пробую различные варианты реализации, но пока без толку.
Добавлено через 13 часов 12 минут
актуально. нужна хелпа, ибо сделать нужно в ближайшее время