Как сделать прокрутку фигур в java AWT ?
Приведенный ниже код помещает Мои 8 фигур в 8 различных положениях.
Shape aShape = new RoundRectangle2D.Double(60,112,310,60,10,10); Shape bShape = new RoundRectangle2D.Double(60,194,310,60,10,10); Shape cShape = new RoundRectangle2D.Double(60,276,310,60,10,10); Shape dShape = new RoundRectangle2D.Double(60,358,310,60,10,10); Shape eShape = new RoundRectangle2D.Double(60,440,310,60,10,10); Shape fShape = new RoundRectangle2D.Double(60,522,310,60,10,10); Shape gShape = new RoundRectangle2D.Double(60,604,310,60,10,10); Shape hShape = new RoundRectangle2D.Double(60,686,310,60,10,10);
Я жестко закодировал положение шрифта также в форме.
// aShape border color graphics2D.setStroke(new BasicStroke(borderThickness)); graphics2D.setColor(Color.WHITE); // Drawing a Rounded Rectangle for A graphics2D.draw(aShape); graphics2D.setStroke(oldStroke); // Setting the Background Color graphics2D.setColor(color); graphics2D.fill(aShape); // Setting the font inside the shape Font aFont = new Font("Serif", Font.PLAIN,25); graphics2D.setFont(aFont); graphics2D.setColor(Color.WHITE); graphics2D.drawString(ProjectConstants.A_KEY, 80,148);
Но теперь я хочу показать только 4 за раз и ввести прокрутку. Поскольку позиции X и Y жестко закодированы, я не знаю, как я буду прокручивать свои фигуры ?
Может ли кто-нибудь поделиться некоторыми соображениями о том, как динамически загружать мои графические фигуры и размещать их в правильном положении при прокрутке ?
Что я уже пробовал:
Я попытался поместить 4 фигуры в одну панель и еще 4 фигуры в другую панель, а также попытался ввести прокрутку, но это заменило бы 4 фигуры в одном свитке.