Tag: 钢琴

如何使用JScrollPane和JLayeredPane创建钢琴

我需要在JScrollPane中使用JLayeredPane创建一个包含四个八度的虚拟钢琴,这样最初会显示一个八度音阶,并且可以水平滚动以查看其他八度音阶。 我的代码只显示一个八度音,不显示滚动条和其他八度音程。 以下代码有什么问题? class PianoLayout extends JScrollPane { public PianoLayout() { initComponents(); } private void initComponents() { JLayeredPane layer = new JLayeredPane(); //ScrollableLayeredPane layer = new ScrollableLayeredPane(); layer.setSize(1120,150); JButton[] keys = new JButton[48]; int keyIndex = 0, i; for(i=0;i<28;i++) { keys[keyIndex] = createWhiteKey(i); layer.add(keys[keyIndex], 0, -1); keyIndex+=1; if(i%7!=2 && i%7!=6) { keys[keyIndex] = createBlackKey(i); layer.add(keys[keyIndex], […]