17 / 22 / 6
Регистрация: 16.10.2013
Сообщений: 316
|
||||||
1 | ||||||
Почему при изменении окна каждый раз создается новый обьект?04.11.2013, 18:21. Показов 1672. Ответов 10
Метки нет (Все метки)
сам код:
Кликните здесь для просмотра всего текста
0
|
04.11.2013, 18:21 | |
Ответы с готовыми решениями:
10
При нажатии на Button каждый раз создается новый компонент (button/label/textbox) Целесообразность применения LOCK TABLES каждый раз при изменении таблицы Как заставить выполнятся модуль VBA каждый раз при изменении графика? Почему при изменении размера окна не меняется цвет заполнения? |
6 / 6 / 1
Регистрация: 15.09.2013
Сообщений: 149
|
||||||
04.11.2013, 18:51 | 3 | |||||
Тоже самая проблема и у меня была с кодом)))
А вообще мне кажется,когда ты меняешь размер фрейма вызывается
Добавлено через 1 минуту Если быстро менять размер появляется много кружков)) Это нормально.В итоге то один
0
|
17 / 22 / 6
Регистрация: 16.10.2013
Сообщений: 316
|
|
04.11.2013, 21:02 [ТС] | 4 |
0
|
63 / 63 / 12
Регистрация: 29.08.2012
Сообщений: 152
|
|
04.11.2013, 22:14 | 5 |
Как уже сказали выше, что при изменении размера фрейма вызывается метод repaint(), который вызовет все необходимые методы для новой отрисовки(поправьте, если не так) и ваш переопределенный paintComponent() тоже. Т.к. координаты и цвет овала находятся в этом методе, то соответственно, если он будет вызываться несколько раз, то при каждом вызове координаты будут меняться.
Одно из решений может быть в создании класса Oval, которому зададутся все необходимые параметры один раз - при инициализации. А при необходимости их поменять с помощью метода, например, randomize(), который задаст новые координаты.
1
|
17 / 22 / 6
Регистрация: 16.10.2013
Сообщений: 316
|
||||||
05.11.2013, 00:08 [ТС] | 6 | |||||
скажите, так правильно будет?
Кликните здесь для просмотра всего текста
фигура стоит на месте, получает цвет и при нажатии меняет. Запутался как с цветом быть и создал метод. Но где именно его вызывать? Я два раза его в коде вставил
0
|
92 / 92 / 18
Регистрация: 06.01.2012
Сообщений: 394
|
|
05.11.2013, 00:14 | 7 |
А кто нибудь подскажет как от этого избавится?
0
|
63 / 63 / 12
Регистрация: 29.08.2012
Сообщений: 152
|
|
05.11.2013, 00:20 | 8 |
1-й раз вы его вызываете после создания объекта MyDrawPanel, хотя можно это сделать во время его создания (вызов метода поместить в конструктор). В другие разы метод вызывается по листенеру.
1
|
17 / 22 / 6
Регистрация: 16.10.2013
Сообщений: 316
|
|
05.11.2013, 00:37 [ТС] | 9 |
Спасибо! Все заработало. Снова туплю на мелочах.
Добавлено через 1 минуту от чего избавиться? В своем рандоматоре сделайте как сказал Lancaster и все будет как вы хотели. Лично у меня фигура стоит и при изменении окна. При нажатии кнопки меняет цвет. Добавлено через 6 минут теперь проблемка - как создать несколько обьектов?
0
|
92 / 92 / 18
Регистрация: 06.01.2012
Сообщений: 394
|
|
05.11.2013, 00:52 | 10 |
warrax, я имею ввиду избавится от мерцания круга, если он 1. Но походу никак, кроме setResizeble(false);
0
|
63 / 63 / 12
Регистрация: 29.08.2012
Сообщений: 152
|
||||||
05.11.2013, 00:52 | 11 | |||||
Как вариант, можно реализовать это так...
0
|
05.11.2013, 00:52 | |
05.11.2013, 00:52 | |
Помогаю со студенческими работами здесь
11
Ошибка при заполнении - добавляет каждый раз в новый столбец Каждый раз в бд создается новая строчка Каждый раз новая таблица на каждый новый день При нажатии на кнопку файл не создается на диске, а он создается только после сворачивания или закрытия окна... Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |