簡體   English   中英

如何在 jlabel 上設置圖像大小修復?

[英]How to set image size fix on jlabel?

嗨,我正在嘗試制作 Java 桌面應用程序,我有一個JLabel我正在洗牌圖像我想設置適合該JLabel圖像大小

這是我的代碼

public class ImageShuffle extends JPanel {

    private List<Icon> list = new ArrayList<Icon>();
    private JLabel label = new JLabel();
    private Timer timer = new Timer(1000, new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {
            update();
        }
    });

    public ImageShuffle() {
        this.setLayout(new GridLayout(1, 0));
          list.add(new ImageIcon("E:\\SOFTWARE\\TrainPIS\\res\\drawable\\e.jpg"));
    list.add(new ImageIcon("E:\\SOFTWARE\\TrainPIS\\res\\drawable\\d.jpg"));
    list.add(new ImageIcon("E:\\SOFTWARE\\TrainPIS\\res\\drawable\\yellow.png"));
      list.add(new ImageIcon("E:\\SOFTWARE\\TrainPIS\\res\\drawable\\f.jpg"));
            list.add(new ImageIcon("E:\\SOFTWARE\\TrainPIS\\res\\drawable\\l.jpg"));
        label.setIcon(UIManager.getIcon("OptionPane.informationIcon"));

        timer.start();
    }

    private void update() {
        Collections.shuffle(list);
        label.setIcon(list.get(0));
    }

    private void display() {
        JFrame f = new JFrame("ImageShuffle");
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.add(this);
        f.add(label);
        f.pack();
        f.setLocationRelativeTo(null);
        f.setVisible(true);
    }

我怎樣才能做到這一點

提前致謝

查看 Darryl 的Stretch Icon ,它會根據標簽中的可用空間增大/縮小圖標。

private void display() {
    JFrame f = new JFrame("ImageShuffle");
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    f.add(this);
    f.add(label);
    f.pack();
    f.setLocationRelativeTo(null);
    f.setSize(x,y)
    f.setVisible(true);

X 是你的寬度,y 是你的高度!

如果你寫例如

  f.setSize(800,600);

當您像我一樣插入它時,它應該設置大小!

如果要設置 JLabel 大小,如下所示:

 panelName.setSize(x,y);
 panelName.setVisible(true);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM