JAVA 界面设计怎么插入背景图片?

JAVA 界面设计怎么插入背景图片?,第1张

JPanel jp=new JPanel()://定义面板并初始化

Icon iocn=new ImageIcon("C:/My Documents/tupian.jpg")//定义图片并初始化,写上图片的绝对路拿亏洞径

JLabel jl=new JLabel(icon)://把图片放在标签上

jp.add(jl)//往面板上添加标签注空轿意:面板JPanel不能消枯之间添加图片iocn,icon需要放在标签JLabel上,才能在JPanel上显示

import java.awt.event.*

import javax.swing.*

public class MainJFrame extends JFrame{

private ImageJPanel ip

public MainJFrame() {

initial()

}

public void initial()

{

ip=new ImageJPanel()

this.setTitle("Demo")

this.setSize(400,300)

this.setResizable(false)

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)

this.setLocationRelativeTo(this)

Container c=this.getContentPane()

c.setLayout(null)

ip.setBounds(0,0,this.getWidth(),this.getHeight())

c.add(ip)

this.setVisible(true)

}

public static void main(String[] args)

{

new MainJFrame()

}

}

class ImageJPanel extends JPanel

{

private ImageIcon ii

public ImageJPanel()

{

//bk.jpg是指背景图片的名称 ii=new ImageIcon("bk.jpg")

}

//绘制背景图片 public void paintComponent(Graphics g)

{

super.paintComponent(g)

g.drawImage(ii.getImage(),0,0,this)

}

}

在body里面这样写:<body

background="携含url或图片的名称">

</body>

如果直接写图片的名称辩散笑,则要把图片直接放到与程序掘喊文件一个文件夹里

//注意:

//当前目录下要有一个p.jpg文件

//压缩这个文件使它的大小尽量小,最好只有几十KB

//否则无法显示背景图片

package java525

import java.awt.*

import java.awt.event.*

import javax.swing.*

public class MainWindow extends JFrame implements ActionListener {

JMenuBar menuBar//菜单条

JMenu menu1, menu2, menu3, menu4//菜单

JMenuItem m11, m12, m13//菜单项

JMenuItem m21, m22, m23

JMenuItem m31, m32, m33

JMenuItem m41, m42

Image pic

public static void main(String[] args) {

new MainWindow()

}

public MainWindow() {

pic=Toolkit.getDefaultToolkit().getImage("p.jpg")

MediaTracker t=new MediaTracker(this)

t.addImage(pic,1)

try

{

t.waitForID(1)

}

catch(Exception e)

{

}

//createMenu()

setTitle("学生管理系统")//设置窗口标题

setIconImage((new ImageIcon("icon.gif")).getImage())//设置图标

setSize(600, 400)//设旁裤置窗运指简口大小

Dimension size = Toolkit.getDefaultToolkit().getScreenSize()//取屏幕大小

setLocation((size.width - getWidth()) / 2, (size.height - getHeight()) / 2)

setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE)//设逗庆置关闭行为

setVisible(true)//使窗口可见

//this.setExtendedState(JFrame.MAXIMIZED_BOTH)

}

public void actionPerformed(ActionEvent e) {

}

public void paint(Graphics g) {

super.paint(g)

g.drawImage(pic,0,0,null)

}

}


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

原文地址: https://outofmemory.cn/bake/11972332.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存