为什么在什么情况下会出现将JPanel添加到JLabel的情况?

为什么在什么情况下会出现将JPanel添加到JLabel的情况?,第1张

为什么在什么情况下会出现将JPanel添加到JLabel的情况?

动画图像作为GUI的BG。我使用HTML来调整此尺寸(x3),但是如果它已经是所需的尺寸,则可以直接将其设置为

Icon
标签的。

import java.awt.*;import javax.swing.*;import javax.swing.border.EmptyBorder;class LabelAsBackground {    public static final String HTML =        "<html>" +        "<style type'text/css'>" +        "body, html { padding: 0px; margin: 0px; }" +        "</style>" +        "<body>" +        "<img src='http://pspre.org/media/starzoom-thumb.gif'" +        " width=320 height=240>" +        "";    LabelAsBackground() {        Jframe f = new Jframe("Animated Image BG");        f.setDefaultCloseOperation(Jframe.DISPOSE_ON_CLOSE);        JLabel contentPane = new JLabel(HTML);        contentPane.setLayout(new GridLayout());        JPanel gui = new JPanel(new GridLayout(3,3,15,15));        gui.setOpaque(false);        contentPane.add(gui);        gui.setBorder(new EmptyBorder(20,20,20,20));        for (int ii=1; ii<10; ii++) { gui.add( new JButton("" + ii));        }        f.setContentPane(contentPane);        f.pack();        //f.setResizable(false); // uncomment to see strange effect..        f.setVisible(true);    }    public static void main(String[] args) {        //Create the frame on the event dispatching thread        SwingUtilities.invokeLater(new Runnable(){ @Override public void run() {     LabelAsBackground lab = new LabelAsBackground(); }        });    }}

不知道它是否是“真正的”。这似乎是一个主观术语,需要更多说明。我从来没有使用过这种方法,只是想通了,今晚摸索着。;)



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5560753.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存