我试图用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