8 / 8 / 3
Регистрация: 29.04.2014
Сообщений: 76
|
||||||
1 | ||||||
Нарисовать линию на игровом поле28.05.2016, 12:25. Показов 2035. Ответов 7
Метки нет (Все метки)
Задание: нарисовать на игровом поле линию(потом переделаю на то что нужно) при клике
Проблема: поле рисую на ура, а вот линия при клике не рисуется...
0
|
28.05.2016, 12:25 | |
Ответы с готовыми решениями:
7
Нарисовать линию Как нарисовать линию на Java.awt.Canvas? Как нарисовать пунктирную линию на белом фоне в JLabel? Не отрисовываются координаты игрока на игровом поле |
63 / 63 / 58
Регистрация: 19.01.2016
Сообщений: 152
|
|||||||||||
29.05.2016, 01:48 | 2 | ||||||||||
Сначала ты рисуешь на главной панели, потом хочешь на нее добавить еще панель, которая перекроет все что было нарисовано. Нужно рисовать на одной панели, перерисовывая при клике мыши в paintComponent то что уже нарисовано
и дорисовывая линии. При этом слушатель мыши добавлять не к форме, а к панели на которой рисуешь. В обработчике события мыши добавлять линию в коллекцию типа private Vector<Line2D> lines;
0
|
8 / 8 / 3
Регистрация: 29.04.2014
Сообщений: 76
|
||||||
29.05.2016, 17:06 [ТС] | 3 | |||||
так?
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
0
|
63 / 63 / 58
Регистрация: 19.01.2016
Сообщений: 152
|
|
29.05.2016, 17:40 | 4 |
MouseListener должен быть в конструкторе главного класса.
repaint вызывает метод PaintComponent
1
|
8 / 8 / 3
Регистрация: 29.04.2014
Сообщений: 76
|
|
29.05.2016, 18:02 [ТС] | 5 |
ничего не рисует, но хоть уже ошибки нету
0
|
63 / 63 / 58
Регистрация: 19.01.2016
Сообщений: 152
|
|
29.05.2016, 18:29 | 6 |
Повнимательнее посмотри фрагменты кода, которые я дал выше. В mouseClicked ничего не рисуется, а только добавляется
объект типа Line2D в коллекцию Vector<Line2D> lines( которая объявляется как глобальная переменная, а инициализируется в конструкторе главного класса) и вызывается repaint -> paintComponent. Рисование осуществляется в paintComponent, где линия берется из Vector<Line2D> lines.
0
|
8 / 8 / 3
Регистрация: 29.04.2014
Сообщений: 76
|
|
29.05.2016, 23:44 [ТС] | 7 |
вообще ничего((
0
|
63 / 63 / 58
Регистрация: 19.01.2016
Сообщений: 152
|
|
30.05.2016, 17:27 | 8 |
Установи для фрейма setContentPane(JPanel myContentPane) и на эту панель добавь панель на которой будешь рисовать
myContentPane.add(myDrawingPanel). К панели для рисования пивяжи MouseListener.
0
|
30.05.2016, 17:27 | |
30.05.2016, 17:27 | |
Помогаю со студенческими работами здесь
8
Фрукт должен появлятся в произвольном месте на игровом поле Написать программу, которая принимает решение о действии персонажа на игровом поле. нарисовать линию! Нарисовать линию Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |