Какой LayoutManager я должен использовать для позиционирования изображений клавиш пианино с помощью Java Swing? - PullRequest
0 голосов
/ 21 февраля 2019

Я пытаюсь создать пианино, и у меня есть красивые изображения для каждой клавиши.

Я хочу динамический способ добавления клавиш в правильном положении.Теперь для белых клавиш это довольно просто, я просто использую FlowLayout, и они будут точно расположены.Но для черных клавиш я не могу придумать подходящий динамический способ их правильного добавления в пустые пространства между белыми клавишами.

Причина в том, что нижняя часть белого ключа шире, чем его верхняя часть.,Также расстояние между черными клавишами не является фиксированным, оно отличается от ключа к ключу.

Ширина нижней части белой клавиши всегда такая же, как и для верхней ширины.Поэтому, как я это реализовал, вырезал белый ключ в верхней и нижней части и использовал JPanel с FlowLayout каждый, а затем расположил эти две панели одну под другой.Этот способ работает, но я думаю, что он не оптимален, поскольку для добавления KeyListeners мне в конечном итоге понадобятся два для одного ключа.

Нет ли лучшего способа добавления черных клавиш?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...