如何在帧最大化时自动调整图像大小?

时间:2017-08-21 19:59:16

标签: java swing jframe jlabel

当JFrame(frameC)最大化时,我希望labelC“拉伸”。

有没有办法正确地做到这一点?

package run_game;

import java.awt.BorderLayout;
import java.awt.Dimension;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class RunGame_Main{

//creating the GUI and showing it.

private static void createAndShowGUI(){

    //create frame
    JFrame frameC = new JFrame("RJ_v0.1");
    frameC.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    //create JLabel
    JLabel labelC = new JLabel("");
    labelC.setPreferredSize(new Dimension(854, 480));
    frameC.getContentPane().add(labelC, BorderLayout.CENTER);

    //display frame&panel.
    frameC.pack();
    //center frame on screen when launched
    frameC.setLocationRelativeTo(null);
    frameC.setVisible(true);

    //change background image (label)               //change path for new image
    labelC.setIcon(new ImageIcon("D:/Eclipse/RJ_v_0.1/src/main/resources/assets/icons/background/pbg.jpg"));


    //change icon on title bar
    ImageIcon icon = new ImageIcon("D:/Eclipse/RJ_v_0.1/src/main/resources/assets/icons/logo.jpg");
    frameC.setIconImage(icon.getImage());

}
public static void main(String args[]){

//creating and showing this application's GUI.
javax.swing.SwingUtilities.invokeLater(new Runnable(){
    public void run(){
        createAndShowGUI();
    }
  });   
 }  
}

0 个答案:

没有答案