【问题标题】:Positioning JButton is not working定位 JButton 不起作用
【发布时间】:2013-12-15 17:02:28
【问题描述】:

我有一个装饰的JFrame。我在框架中添加了背景图像并添加了JButton。 当我添加一个按钮时,背景图像不可见。我应该怎么办? 这是我的代码 sn-p。

public Demo3()

{
    setTitle("STARTUP");
    setSize(800,500);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
    setUndecorated(true);
    setLocationRelativeTo(null);

    JPanel jp=new JPanel();
    JButton jb=new JButton();
    JLabel jl=new JLabel(new ImageIcon("c://image.jpg"));
    jp.setLayout(null);
    jp.add(jl);
    jp.add(jb);

    add(jp);
    jb.setBounds(400,250,50,50);
    setVisible(true);
}

【问题讨论】:

  • 顺便说一句 - 您是否不理解我发布 SSCCE 的建议,或者您只是忽略了它?

标签: java swing jpanel jlabel imageicon


【解决方案1】:

不要使用空布局。

有关几个选项,请参阅Background Panel。根据您的具体要求,您可以:

  1. 使用JLabel作为背景,然后设置标签的布局管理器
  2. 在面板上进行自定义绘制,然后将组件添加到面板。

【讨论】:

    【解决方案2】:

    你需要将JLabel的布局设置为null。然后只有setBounds方法可以工作。

    lj,setLaout(null);

    jb.setBounds(400,250,50,50);

    【讨论】:

    • -1,这是一个糟糕的解决方案。您不应该使用空布局。 Swing 旨在与布局管理器一起使用。一个月前你得到了一个更好的解决方案。
    猜你喜欢
    • 2023-03-29
    • 2016-02-27
    • 2013-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-17
    相关资源
    最近更新 更多