我正在使用 Java Swing 为我的程序编写 GUI。我使用以下链接编写了一个类来扩展我的 JFrame 。我的问题是我的按钮根本不在背景上。也就是说,像这样:
--------------------------------------
| | |
| | |
| my picture | |
--------------------------------------
| | | |
| | Label | |
| | text | |
| | button | |
--------------------------------------
我在下面包含了一些伪代码:
public class demo extends JFrame implements ActionListener
{
class demo()
{
CustomJFrame frame = new CustomJFrame();
JPanel pane = new JPanel(new GridBagLayout());
GridBagConstraints c = new GridBagConstraints();
JTextField dummyText = new JTextField("I'm some text");
JLabel dummyLabel = new JLabel("I'm a label);
JButton dummyButton = new JButton("I'm a button");
c.fill = GridBagConstraints.BOTH;
c.gridx = 0;
c.gridy = 0;
pane.add(dummyText, c);
c.fill = GridBagConstraints.BOTH;
c.gridx = 1;
c.gridy = 0;
pane.add(dummyLabel, c);
c.fill = GridBagConstraints.BOTH;
c.gridx = 0;
c.gridy = 2;
pane.add(dummyButton, c);
frame.add(pane);
}
}
这是我基于链接的自定义 JFrame 类。
public class CustomJFrame extends JFrame
{
private ImageIcon background = new ImageIcon("mypicture.png");
private JLabel label = new JLabel(background);
public CustomJFrame()
{
this.SetDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setTitle("Traffic Alert Demo");
setSize(800,480); //specific to my picture though
add(label, BorderLayout.CENTER);
setVisible(true);
}
}
因此,我想要某种方式能够让按钮以我的图片为中心,或者至少能够让我在图片上任何我喜欢的地方移动按钮。到目前为止,我没有找到任何可以帮助我的东西,有什么想法吗?还是我的照片,因为我把它做成了一个标签,与 GridBag 的交互很糟糕?请帮忙。
问候, 极客