「java窗体背景图片」java 背景图片
今天给各位分享java窗体背景图片的知识,其中也会对java 背景图片进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java怎么给窗体或者面板设置背景图片
- 2、java 窗体设置背景图片问题?(附上登陆界面代码,我想加个背景图片,求大神帮忙改改)
- 3、如何在java的窗口中添加背景图片
- 4、Java窗体如何设置背景图片?急求!!
- 5、Java swing 窗体如何设置背景图片?
- 6、java 窗体中添加背景图片的方法
java怎么给窗体或者面板设置背景图片
import javax.swing.*;
import javax.imageio.*;
import java.awt.*;
import java.io.*;
public class AddImage {
public static void main(String[] args){
new AddImageFrame();
}
}
class AddImageFrame extends JFrame{
public AddImageFrame(){
super("添加背景图片");
setBounds(200,200,500,400);
setDefaultCloseOperation(this.EXIT_ON_CLOSE);
setVisible(true);
AddImagePanel aip= new AddImagePanel();
add(aip);
}
}
class AddImagePanel extends JPanel{
private Image backgroundimage=null;
public void paintComponent(Graphics g){
super.paintComponent(g);
try{
backgroundimage=ImageIO.read(new File("E:/picture/http_imgload.jpg")).getScaledInstance(getWidth(),getHeight(),Image.SCALE_FAST);
}catch(IOException e){
e.printStackTrace();
}
g.drawImage(backgroundimage,0,0,null);
image.flush();
}
}
这是设置背景图片的简单代码 你要的主要是 backgroundimage=ImageIO.read(new File("E:/picture/http_imgload.jpg")).getScaledInstance(getWidth(),getHeight(),Image.SCALE_FAST);
javax.image包里面有一个类 ImageIO有一个方法read(File string) 读取一个图片文件返回image对象,File会抛出异常,awt包里面的Image有个方法 getScaledstance(width,height,hints) 是缩放图片到多大,intnts是缩放的算法,取Image字段常量,有很多钟算法,你可以取一种,这个程序里图片的大小取的是容纳它的panel面板的大小,会随着面板的变化充满整个面板,这个变化过程要调用面板的 paintComponent()方法来监视,Graphics 中的drawImage(x,y,observer)方法来实现,observer是安全管理器,可以为null,最后绘画完后刷新就可以了,希望对你有帮助,俺也是初学者,交流为上 ,不过我个人还是认为下面的方法比较好
public void setBak() { //设置窗口背景
((JPanel) this.getContentPane()).setOpaque(false);
ImageIcon img = new ImageIcon(getClass().getResource("picture/http_imgload.jpg"));
JLabel background = new JLabel(img);
this.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE));
background.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());
}构造器调用这个方法图片不会缩放,上面的例子 不用缩放的方法也可以做到,就看怎么看了
java 窗体设置背景图片问题?(附上登陆界面代码,我想加个背景图片,求大神帮忙改改)
lz 你好
代码修改如下:
(有注释)
import java.awt.*;
import javax.swing.*;
import java.io.*;
import java.awt.event.*;
//自定义一个面板类
class MyPanel extends JPanel{
public void paintComponent(Graphics g){
super.paintComponent(g);
//绘制一张背景图片 view.jpg是图片的路径 lz自己设定为自己想要添加的图片
Image image = new ImageIcon("view.jpg").getImage();
g.drawImage(image, 0, 0, this);
}
}
public class denglu extends JFrame {
//设置一个含有背景图片的面板
private MyPanel panel;
private JLabel lab_zhanghao = new JLabel("账号:");
private JTextField jta_text = new JTextField();
Font lab = new Font("楷体",1,30);
private JLabel lat_password = new JLabel("密码:");
Font lat = new Font("楷体",1,30);
private JTextField jtb_text = new JTextField();
private JButton btn_register = new JButton("注册");
private JButton btn_land = new JButton("登陆");
Font btn = new Font("黑体",2,30);
public static int pd = 0;
public static String ak1, ak2;
private Container contentPane = this.getContentPane();
public denglu () {
this.setSize(400,300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
this.setTitle("登陆");
this.setResizable(false);
btn_register.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
pd = 1;
ak1 = jta_text .getText();
ak2 = jtb_text .getText();
String fileName = "E:\\users.dat";
try {
Writer writer = new FileWriter(fileName);
} catch (IOException e1) {
e1.printStackTrace();
}
jta_text.setText("");
jtb_text.setText("");
JOptionPane.showMessageDialog(null,"注册成功! 您的用户名是"+ak1+"密码是"+ ak2);
}
});
btn_land.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if(pd==1) {
if(ak1.equals(jta_text.getText()) ak2.equals(jtb_text.getText())) {
JOptionPane.showMessageDialog(null, "登录成功!");
} else {
JOptionPane.showMessageDialog(null,"登陆失败!检查账号密码是否正确",null,
JOptionPane.ERROR_MESSAGE, null);
jta_text .setText("");
jtb_text .setText("");
}
}
}
});
init();
panel = new MyPanel();
//将所有的组件添加到panel面板中
panel.add(lab_zhanghao);
panel.add(lat_password);
panel.add(jta_text);
panel.add(jtb_text);
panel.add(btn_register);
panel.add(btn_land);
panel.setLayout(null);
getContentPane().add(panel);
}
private void init() {
lab_zhanghao.setSize(200,100);
lab_zhanghao. setLocation(50,20);
lab_zhanghao.setFont(lab);
lat_password.setSize(200,100);
lat_password.setLocation(50,80);
lat_password.setFont(lat);
jta_text.setSize(190,30);
jta_text.setLocation(160,55);
jtb_text.setSize(190,30);
jtb_text.setLocation(160,115);
btn_register.setSize(120, 40);
btn_register.setLocation(60, 180);
btn_land.setSize(120, 40);
btn_land.setLocation(230, 180);
btn_register.setFont(btn);
btn_land.setFont(btn);
}
public static void main(String[] args)
throws ClassNotFoundException,
InstantiationException, IllegalAccessException,
UnsupportedLookAndFeelException {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
new denglu().setVisible(true);
}
}
我这儿的运行效果:
希望能帮助你哈
如何在java的窗口中添加背景图片
可以新建个面板,在面板里放入带图片的JLabel,填满面板即可。
JPanel jp = new JPanel(); //新建面板
jp.setLayout(new FlowLayout()); //设置面板布局
ImageIcon ii=new ImageIcon(getClass().getResource("/Picture/i.jpg"));
JLabel uppicture=new JLabel(ii); //往面板里加入JLabel
this.setVisible(true);
Java窗体如何设置背景图片?急求!!
可以新建个面板,在面板里放入带图片的JLabel,填满面板即可。
JPanel jp = new JPanel(); //新建面板
jp.setLayout(new FlowLayout()); //设置面板布局
ImageIcon ii=new ImageIcon(getClass().getResource("/Picture/i.jpg"));
JLabel uppicture=new JLabel(ii); //往面板里加入JLabel
this.setVisible(true);
Java swing 窗体如何设置背景图片?
background = new ImageIcon("images/backImage.png");
backImage = new JLabel(background);
backImage.setBounds(0, 0, background.getIconWidth(),
background.getIconHeight());
backPanel = (JPanel) this.getContentPane();
backPanel.setOpaque(false);
this.getLayeredPane().setLayout(null);
this.getLayeredPane().add(backImage, new Integer(Integer.MIN_VALUE));
backPanel.setLayout(new BorderLayout());
这个是我程序里面复制出来的,效果就下面图一样。
java 窗体中添加背景图片的方法
import java.awt.*;
import java.net.URL;
import javax.swing.*;
import java.awt.Dimension;
import java.awt.Container;
import java.awt.GridLayout;
import javax.swing.ImageIcon;
import java.awt.event.*;
public class Example1 extends JFrame{
public static void main(String[] args){
JFrame jf=new JFrame("系统登录");
JPanel jpanel = new JPanel();
jf.setContentPane(jpanel);
//设置窗口在屏幕中居中显示
double width = Toolkit.getDefaultToolkit().getScreenSize().getWidth();
double height = Toolkit.getDefaultToolkit().getScreenSize().getHeight();
int x=(int)(width-300)/2;
int y=(int)(height-180)/2;
jf.setBounds(x,y,300,180);
//添加标签组件
GridLayout gird = new GridLayout(3,0);
JPanel jpanel1=new JPanel();
JPanel jpanel2=new JPanel();
JPanel jpanel3=new JPanel();
jpanel.setLayout(gird);
jpanel.add(jpanel1);
jpanel.add(jpanel2);
jpanel.add(jpanel3);
ImageIcon img = new ImageIcon("111.png");
JLabel imgLabel = new JLabel(img);//将背景图放在标签里。
jf.getLayeredPane().add(imgLabel, new Integer(Integer.MIN_VALUE));
imgLabel.setBounds(0,0,img.getIconWidth(), img.getIconHeight());
JLabel name=new JLabel("姓 名:");
JTextField nametext=new JTextField(10);
JLabel pwd=new JLabel("密 码:");
JPasswordField pwd1=new JPasswordField(10);
JButton login=new JButton("登录");
JButton exit=new JButton("退出");
jpanel1.add(name);
jpanel1.add(nametext);
jpanel2.add(pwd);
jpanel2.add(pwd1);
jpanel3.add(login);
jpanel3.add(exit);
jf.getLayeredPane().setLayout(null);
jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
jpanel.setOpaque(false);
jpanel1.setOpaque(false);
jpanel2.setOpaque(false);
jpanel3.setOpaque(false);
jf.setVisible(true);
}
}
那个图片 "111.png"你放到你创建的项目的文件夹里就行 测试成功
关于java窗体背景图片和java 背景图片的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-30,除非注明,否则均为
原创文章,转载请注明出处。