旋轉JPanel有一個奇怪的問題。Java:JPanel邊框旋轉,但背景不是
JPanel pnlDummy = new javax.swing.JPanel()
{
@Override
public void paintComponent(Graphics g)
{
super.paintComponent(g);
Graphics2D g2d = (Graphics2D) g;
g2d.rotate(17 * (Math.PI/180));
};
};
pnlDummy.setBackground(Color.red);
pnlDummy.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 153, 0), 4));
pnlDummy.setMinimumSize(new Dimension(200,100));
pnlDummy.setPreferredSize(new Dimension(200,100));
pnlDummy.setMaximumSize(new Dimension(200,100));
pnlParent.add(pnlDummy);
我有這樣的:
相反,我想有紅色背景旋轉,就像邊界一樣。我錯過了什麼?謝謝!
您重寫的'paintComponent(g)'控制'JPanel'內的繪畫。 JPanel的佈局不會改變,背景填充它。如果要更改背景的繪製方式,請在覆蓋的'paintComponent(g)'中繪製它。如果你想改變'JPanel'在其父代中的繪製方式,則需要覆蓋父代的'paintComponent(g)' – c0der
謝謝你,cOder。問題現在已經清楚了。目前還不清楚我怎樣才能改變JPanel的佈局,覆蓋父面板的'paintComponent(g)'方法。謝謝! –
查看答案一些更多信息 – c0der