Префикс: у меня уже есть событие рисования, которое будет нарисуйте случайные прямоугольники на панели.
Мой проект: Я хочу создать визуализатор сортировки, выделяющий текущий прямоугольник, к которому осуществляется доступ, чтобы указать, на каком этапе процесса сортировки мы находимся.< /p>
Код: Выделить всё
private void sortBtn_click(...){
int numRectangles;
int[] heights = new int[numRectangles]; // Array to store randomized heights of rectangles
// This loop would be the sorting algorithm I would use however a
// basic loop is used to test the highlighting of rectangles
// I want to draw over the current rectangle that already drawn on the panel
for(int i = 0; i < numRectangles; i++) {
}
}
Код: Выделить всё
private void sortBtn_Click(...){
int numRectangles
int[] heights = new int[numRectangles]; // Array to store randomized heights of rectangles
Graphics g = panel.createGraphics();
// Basic loop to test the highlight of rectangles
// Want to draw over the current rectangle that already drawn on the panel
for(int i = 0; i < numRectangles; i++) {
Brush myBrush = Brushes.Red;
g.fillRectangle(...);
}
}
Два основных вопроса:
- Была ли это плохой практикой? Если да, то как я могу эффективно реализовать функцию выделения с помощью событий рисования?
- Правильно ли я реализовал метод createGraphics? Если да, то почему это ничего не вынесет на панель
Я пробовал использовать createGarphics(), но, похоже, на моей панели ничего не работало и не рисовалось.< /п>
Подробнее здесь: https://stackoverflow.com/questions/790 ... ot-working
Мобильная версия