我試圖用8個點做一個黑色的多邊形,並把它放在按鈕下面的中心。我相信我所做的一切都是正確的,但多邊形看起來部分受到了衝擊,並且不在按鈕下居中。有人可以解釋爲什麼它不能正常工作嗎?爲什麼我的fillpolygon形狀看起來很奇怪(Java GUI)?
我的覆蓋面板創建多邊形。
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JPanel;
class OwnJpanel extends JPanel{
public void paintComponent(Graphics g){
int[] xpoints = {10, 20, 25, 25, 20, 10, 5, 5};
int[] ypoints = {10, 25, 20, 27, 37, 37, 27, 20};
g.setColor(Color.black);
g.fillPolygon(xpoints, ypoints, 8);
}
}
我的主類:
import java.awt.BorderLayout;
import java.awt.Graphics;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Main{
public Main(){
JFrame jf = new JFrame();
jf.getContentPane();
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setSize(500,500);
OwnJpanel oj1 = new OwnJpanel();
JPanel jp1 = new JPanel();
JButton jb1 = new JButton("Click Once");
//jf.getContentPane().add(BorderLayout.CENTER, oj1); (Attempted this to center the polygon but it continues to be stuck in the left corner
oj1.add(jb1);
jf.add(oj1);
jf.setVisible(true);
}
public static void main(String [] args){
new main();
}
}
最後,有一個JButton具有越過按鈕?所以一個劃掉按鈕(像X,在當前的JButton「點擊一次」)。
*「最後,是否有JButton與按鈕交叉?所以一個劃掉的按鈕「*你的意思是」+「還是」X「? – MadProgrammer 2014-10-06 05:02:23
該按鈕由面板佈局管理器控制,所以它很可能放在佈局管理器決定應該放在哪裏。你想創建? – MadProgrammer 2014-10-06 05:05:11
@MadProgrammer我的意思是X.我試圖創建一個黑色的8點多邊形。 – user3404854 2014-10-06 05:17:43