-
2021-02-24 01:11:53
import java.awt.Graphics; import java.awt.Image; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import javax.imageio.ImageIO; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; class BackgroundImage extends JPanel{ Image img; public BackgroundImage() { try { img = ImageIO.read(new File("image/server.JPG")); }catch(Exception e) { e.printStackTrace(); } } //重绘三要素:1.repaint 2.改变Panel大小 3.主程序启动 public void paint(Graphics g) { super.paint(g); g.drawImage(img, 0, 0, 400, 400, this); //重绘子组件,不然会出现异常“有个按钮需要鼠标移动到它上边才显示” super.paintChildren(g); } } public class ServerStartStop extends JFrame implements ActionListener{ BackgroundImage bgi = null; JButton jbStartUp = null,jbStop = null; public ServerStartStop() { //设置标题栏图标 ImageIcon titltIcon = new ImageIcon("image/server.JPG"); this.setIconImage(titltIcon.getImage()); //JPanel中设置背景图片 bgi = new BackgroundImage(); bgi.setLayout(null); //创建与定位按钮 jbStartUp = new JButton("启动"); jbStop = new JButton("停止"); bgi.add(jbStartUp); bgi.add(jbStop); jbStartUp.setBounds(10,10,70,30); jbStop.setBounds(10,50,70,30); this.add(bgi); this.setTitle("后台"); this.setSize(400,400); this.setLocation(300,300); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setResizable(false); this.setVisible(true); } @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub } public static void main(String[] args) { ServerStartStop sss = new ServerStartStop(); } }
更多相关内容 -
jpanel设置背景图片的二个小例子
2020-09-04 13:50:27主要介绍了jpanel设置背景图片的二个小例子,实现了动态加载图片做背景的方法,需要的朋友可以参考下 -
为Jpanel设置背景图片
2016-04-13 10:45:36前言:在网上看到了很多方法,一开始总想在Jpanel类创建的时候设置背景图片,如下 Jpanel bg = new Jpanel(){ /* 绘制背景图片代码 */ }; 尝试了很多代码都不行,后来转念一想,直接创建一个绘制好背景图片的Jpanel...前言:在网上看到了很多方法,一开始总想在Jpanel类创建的时候设置背景图片,如下
Jpanel bg = new Jpanel(){ /* 绘制背景图片代码 */ };
尝试了很多代码都不行,后来转念一想,直接创建一个绘制好背景图片的Jpanel类
package Player; import java.awt.Graphics; import java.awt.Image; import java.awt.event.ActionEvent; import javax.swing.ImageIcon; import javax.swing.JPanel; //设置主页背景图片的JPnel类 public class HomePanel extends JPanel { ImageIcon icon; Image img; public HomePanel() { // /img/HomeImg.jpg 是存放在你正在编写的项目的bin文件夹下的img文件夹下的一个图片 icon=new ImageIcon(getClass().getResource("/img/HomeImg.jpg")); img=icon.getImage(); } public void paintComponent(Graphics g) { super.paintComponent(g); //下面这行是为了背景图片可以跟随窗口自行调整大小,可以自己设置成固定大小 g.drawImage(img, 0, 0,this.getWidth(), this.getHeight(), this); } }
最后,回到你编写的窗口类里面,创建一个Jpnel类,这个Jpanel类就自带我的HomeImg的
JPanel jpanel = new HomePanel();
效果图如下
-
如何在JPanel中设置背景图片
2021-04-10 12:11:19放弃JLabel为此目的使用a可能会导致内容过度溢出,请参阅下面的详细信息创建一个JLabel,将图像应用于它的icon属性并将其设置为框架内容窗格。然后,您需要适当地设置布局管理器,因为JLabel没有默认的布局管理器...可以通过多种方式实现这一目标。
你可以...
放弃
JLabel为此目的使用a 可能会导致内容过度溢出,请参阅下面的详细信息
创建一个JLabel,将图像应用于它的icon属性并将其设置为框架内容窗格。然后,您需要适当地设置布局管理器,因为JLabel没有默认的布局管理器JFrame frame = ...;JLabel background = new JLabel(new ImageIcon(ImageIO.read(...)));frame.setContentPane(background);frame.setLayout(...);frame.add(...);
更新完整示例import java.awt.EventQueue;import java.awt.GridBagConstraints;import java.awt.GridBagLayout;import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException;import javax.imageio.ImageIO;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.UIManager;import javax.swing.UnsupportedLookAndFeelException;public class LabelBackground {
public static void main(String[] args) {
new LabelBackground();
}
public LabelBackground() {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
}
try {
// Load the background image
BufferedImage img = ImageIO.read(new File("/path/to/your/image/on/disk"));
// Create the frame...
JFrame frame = new JFrame("Testing");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Set the frames content pane to use a JLabel
// whose icon property has been set to use the image
// we just loaded
frame.setContentPane(new JLabel(new ImageIcon(img)));
// Supply a layout manager for the body of the content
frame.setLayout(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridwidth = GridBagConstraints.REMAINDER;
// Add stuff...
frame.add(new JLabel("Hello world"), gbc);
frame.add(new JLabel("I'm on top"), gbc);
frame.add(new JButton("Clickity-clackity"), gbc);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
} catch (IOException exp) {
exp.printStackTrace();
}
}
});
}}
这个问题是在JLabel调整帧大小时不会调整图像大小
警告 - JLabel如果子组件的所需空间超出背景图像的大小,则使用a 可能会导致问题,因为JLabel不会根据其内容计算其首选大小,而是基于其属性icon和text属性
你可以...
创建一个自定义组件,从类似的东西扩展JPanel并覆盖它的paintComponent方法,根据您的需要绘制背景。
看看表演风俗画的更多细节。
这使您能够决定在可用空间更改时图像的最佳缩放比例。虽然有许多方法可以实现,但您应该阅读Image.getScaledInstance()的Perils以了解它们的优缺点。
这会引发一系列新问题,你想要缩放它们并保持纵横比吗?如果是这样,您是否希望将图像适合可用区域或填充它(因此它将始终覆盖可用空间)?
其他考虑
图像通常最好通过ImageIOAPI 加载,因为它能够加载各种图像,但也会IOException在出现问题时抛出。
有关详细信息,请参阅读取/加载图像。
图像的位置也很重要。如果映像在应用程序外部(文件系统的某个位置),则可以使用ImageIO.read(new File("/path/to/image"))。但是,如果图像嵌入在您的应用程序中(例如存储在Jar中),您将需要使用更像的东西ImageIO.read(getClass().getResource("/path/to/image"))......
例如...
例
此示例演示如何使用充当背景组件的自定义组件。当组件大小超过背景图像的大小时,图像将按比例放大以填充可用内容区域。import java.awt.Dimension;import java.awt.EventQueue;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.GridBagConstraints;import java.awt.GridBagLayout;import java.awt.HeadlessException;import java.awt.RenderingHints;import java.awt.Transparency;import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException;import javax.imageio.ImageIO;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.UIManager;import javax.swing.UnsupportedLookAndFeelException;public class SimpleBackground {
public static void main(String[] args) {
new SimpleBackground();
}
public SimpleBackground() {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
}
try {
BackgroundPane background = new BackgroundPane();
background.setBackground(ImageIO.read(new File("/path/to/your/image/on/your/disk")));
JFrame frame = new JFrame("Testing");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setContentPane(background);
frame.setLayout(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridwidth = GridBagConstraints.REMAINDER;
frame.add(new JLabel("Hello world"), gbc);
frame.add(new JLabel("I'm on top"), gbc);
frame.add(new JButton("Clickity-clackity"), gbc);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
} catch (IOException exp) {
exp.printStackTrace();
}
}
});
}
public class BackgroundPane extends JPanel {
private BufferedImage img;
private BufferedImage scaled;
public BackgroundPane() {
}
@Override
public Dimension getPreferredSize() {
return img == null ? super.getPreferredSize() : new Dimension(img.getWidth(), img.getHeight());
}
public void setBackground(BufferedImage value) {
if (value != img) {
this.img = value;
repaint();
}
}
@Override
public void invalidate() {
super.invalidate();
if (getWidth() > img.getWidth() || getHeight() > img.getHeight()) {
scaled = getScaledInstanceToFill(img, getSize());
} else {
scaled = img;
}
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
if (scaled != null) {
int x = (getWidth() - scaled.getWidth()) / 2;
int y = (getHeight() - scaled.getHeight()) / 2;
g.drawImage(scaled, x, y, this);
}
}
}
public static BufferedImage getScaledInstanceToFill(BufferedImage img, Dimension size) {
double scaleFactor = getScaleFactorToFill(img, size);
return getScaledInstance(img, scaleFactor);
}
public static double getScaleFactorToFill(BufferedImage img, Dimension size) {
double dScale = 1;
if (img != null) {
int imageWidth = img.getWidth();
int imageHeight = img.getHeight();
double dScaleWidth = getScaleFactor(imageWidth, size.width);
double dScaleHeight = getScaleFactor(imageHeight, size.height);
dScale = Math.max(dScaleHeight, dScaleWidth);
}
return dScale;
}
public static double getScaleFactor(int iMasterSize, int iTargetSize) {
double dScale = (double) iTargetSize / (double) iMasterSize;
return dScale;
}
public static BufferedImage getScaledInstance(BufferedImage img, double dScaleFactor) {
return getScaledInstance(img, dScaleFactor, RenderingHints.VALUE_INTERPOLATION_BILINEAR, true);
}
protected static BufferedImage getScaledInstance(BufferedImage img, double dScaleFactor, Object hint, boolean bHighQuality) {
BufferedImage imgScale = img;
int iImageWidth = (int) Math.round(img.getWidth() * dScaleFactor);
int iImageHeight = (int) Math.round(img.getHeight() * dScaleFactor);// System.out.println("Scale Size = " + iImageWidth + "x" + iImageHeight);
if (dScaleFactor <= 1.0d) {
imgScale = getScaledDownInstance(img, iImageWidth, iImageHeight, hint, bHighQuality);
} else {
imgScale = getScaledUpInstance(img, iImageWidth, iImageHeight, hint, bHighQuality);
}
return imgScale;
}
protected static BufferedImage getScaledDownInstance(BufferedImage img,
int targetWidth,
int targetHeight,
Object hint,
boolean higherQuality) {
int type = (img.getTransparency() == Transparency.OPAQUE)
? BufferedImage.TYPE_INT_RGB : BufferedImage.TYPE_INT_ARGB;
BufferedImage ret = (BufferedImage) img;
if (targetHeight > 0 || targetWidth > 0) {
int w, h;
if (higherQuality) {
// Use multi-step technique: start with original size, then
// scale down in multiple passes with drawImage()
// until the target size is reached
w = img.getWidth();
h = img.getHeight();
} else {
// Use one-step technique: scale directly from original
// size to target size with a single drawImage() call
w = targetWidth;
h = targetHeight;
}
do {
if (higherQuality && w > targetWidth) {
w /= 2;
if (w
w = targetWidth;
}
}
if (higherQuality && h > targetHeight) {
h /= 2;
if (h
h = targetHeight;
}
}
BufferedImage tmp = new BufferedImage(Math.max(w, 1), Math.max(h, 1), type);
Graphics2D g2 = tmp.createGraphics();
g2.setRenderingHint(RenderingHints.KEY_INTERPOLATION, hint);
g2.drawImage(ret, 0, 0, w, h, null);
g2.dispose();
ret = tmp;
} while (w != targetWidth || h != targetHeight);
} else {
ret = new BufferedImage(1, 1, type);
}
return ret;
}
protected static BufferedImage getScaledUpInstance(BufferedImage img,
int targetWidth,
int targetHeight,
Object hint,
boolean higherQuality) {
int type = BufferedImage.TYPE_INT_ARGB;
BufferedImage ret = (BufferedImage) img;
int w, h;
if (higherQuality) {
// Use multi-step technique: start with original size, then
// scale down in multiple passes with drawImage()
// until the target size is reached
w = img.getWidth();
h = img.getHeight();
} else {
// Use one-step technique: scale directly from original
// size to target size with a single drawImage() call
w = targetWidth;
h = targetHeight;
}
do {
if (higherQuality && w
w *= 2;
if (w > targetWidth) {
w = targetWidth;
}
}
if (higherQuality && h
h *= 2;
if (h > targetHeight) {
h = targetHeight;
}
}
BufferedImage tmp = new BufferedImage(w, h, type);
Graphics2D g2 = tmp.createGraphics();
g2.setRenderingHint(RenderingHints.KEY_INTERPOLATION, hint);
g2.drawImage(ret, 0, 0, w, h, null);
g2.dispose();
ret = tmp;
tmp = null;
} while (w != targetWidth || h != targetHeight);
return ret;
}}
当空间减小时,将图像按比例缩小也是一件简单的事情,但我故意决定将图像保持在最小尺寸。
该示例还利用自定义除法和征服缩放算法,以生成高质量的缩放结果。
-
java中jpanel的背景图片问题
2021-02-26 21:33:38展开全部写一个ImageJPanel类继承自JPanel,在paintComponent方法中用g.drawImage绘制32313133353236313431303231363533e4b893e5b19e31333337393539Image背景图片就挡不着第一张卡片上的四个按钮了。完整的程序如下:...展开全部
写一个ImageJPanel类继承自JPanel,在paintComponent方法中用g.drawImage绘制32313133353236313431303231363533e4b893e5b19e31333337393539Image背景图片就挡不着第一张卡片上的四个按钮了。
完整的程序如下:(注意把背景图片的路径换成你的背景图片路径)import java.awt.CardLayout;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.GridLayout;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JSplitPane;
public class D extends JFrame implements ActionListener{
private static final long serialVersionUID = 1L;
JPanel jp1=new JPanel();
JPanel tmpjp1=new JPanel();
JPanel jp2=new JPanel();
JPanel card_jp1=new JPanel();
JPanel card_jp2=new JPanel();
JPanel card_jp3=new JPanel();
JPanel card_jp4=new JPanel();
JButton jb1=new JButton("按钮1");
JButton jb2=new JButton("按钮2");
JButton jb3=new JButton("按钮3");
JButton jb4=new JButton("按钮4");
JSplitPane jsp=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,jp1,jp2);
CardLayout cl=new CardLayout();
int j=1;
D(){
tmpjp1.setLayout(new GridLayout(4,1,5,5));
tmpjp1.add(jb1);tmpjp1.add(jb2);tmpjp1.add(jb3);tmpjp1.add(jb4);
jp1.add(tmpjp1);
jp2.setLayout(cl);
JPanel p[] = new JPanel[4];
p[0]=new ImageJPanel();
jp2.add(p[0],String.valueOf(0));
for(int i = 1; i
p[i] = new JPanel();
jp2.add(p[i],String.valueOf(i));
}
JButton b[] = new JButton[4];
for(int i = 1; i
int a = i + 1;
b[i] = new JButton("第" + a + "页,下一页");
b[i].addActionListener(this);
p[i].add(b[i]);
}
jsp.setResizeWeight(0.3);
add(jsp);
setSize(800,500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
new D();
}
@Override
public void actionPerformed(ActionEvent e) {
cl.show(jp2,String.valueOf(j++));
if(j==4) j=0;
}
class ImageJPanel extends JPanel {
private Image image;
JButton card_jb1=new JButton("按钮1");
JButton card_jb2=new JButton("按钮2");
JButton card_jb3=new JButton("按钮3");
JButton jb = new JButton("第1页,下一页");
public ImageJPanel() {
super();
setOpaque(true);
add(card_jb1);
add(card_jb2);
add(card_jb3);
jb.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
cl.show(jp2,String.valueOf(j++));
if(j==4) j=0;
}
});
add(jb);
image = Toolkit.getDefaultToolkit().getImage( "C:/tmp/F/3.jpg");//这里换成你的背景图片地址
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
setBackground(Color.WHITE);
if (image != null) {
int height = image.getHeight(this);
int width = image.getWidth(this);
if (height != -1 && height > getHeight())
height = getHeight();
if (width != -1 && width > getWidth())
width = getWidth();
int x = (int) (((double) (getWidth() - width)) / 2.0);
int y = (int) (((double) (getHeight() - height)) / 2.0);
g.drawImage(image, x, y, width, height, this);
}
}
}
}
-
swing开发-JPanel设置背景图
2020-09-18 16:46:42swing开发JPanel设置背景图实现代码 实现代码 1、工具类BackGroundImagePanle类 package centralControl.tool; import java.awt.Graphics; import javax.swing.ImageIcon; import javax.swing.JPanel; /** * 带... -
使用JLable和JPanel设置背景图片时,图片无法显示
2022-06-14 02:22:12问题遇到的现象和发生背景 swing图形化界面,使用JLable和JPanel设置背景图片时,图片无法显示 问题相关代码,请勿粘贴截图 package com.systom; import javax.swing.*; import java.awt.*; /** * @author Nidhogg *... -
关于JPanel设置背景图片的Bug说明
2013-02-14 22:19:05原文来自 关于JPanel设置背景图片的Bug说明 JPanel可以像网页控件一样设置背景图片,主要是通过覆写JPanel的 paint(Graphicsg)方法和paintComponent(Graphics g)方法; 但是二者有区别: “ JLabel类同... -
java – 如何在JPanel中设置背景图片
2021-02-12 22:13:55你可以…放弃为此目的使用JLabel时可能会导致内容过度溢出,请参阅下面的详细信息创建JLabel,将图像应用于其图标属性,并将其设置为框架内容窗格.然后,您需要适当地设置布局管理器,因为JLabel没有默认的布局管理器... -
Swing控件(JPanel,Container等)设置背景图片
2019-07-27 04:51:53NULL 博文链接:https://javapub.iteye.com/blog/764681 -
JAVA GUI自定义JPanel画板背景
2021-03-15 18:11:40自定义JPanel面板背景一、前言1.GUI全称是Graphical User Interface,就是图形用户界面。JAVA的GUI应用广泛在我们生活中也很常见。很多应用使用该GUI编程设计,像点击QQ图标弹出对应的登录窗体。一般程序与用户的... -
java – 如何将图像添加为JPanel背景?
2021-03-14 14:41:56我想使用不同的背景制作四个面板,并使用BorderLayout将它们合并在一起.我使用了JLabel,但我无法将任何组件添加到JLabel,因此我需要将其作为背景.我搜索了一些代码,但它只告诉我如何在JFrame中添加背景.import javax.... -
java设置jPanel的背景图
2016-10-27 11:54:48设置jPanel的背景图片并且不影响jpanel的功能,可以正常向其中添加其他组件。 package login; import java.awt.*; import javax.swing.ImageIcon; import javax.swing.JPanel; /** * 有背景图片的Panel类 ... -
JPanel面板设置背景图片
2018-05-02 10:57:31jpanel = new JPanel(new BorderLayout()) { public void paintComponent(Graphics g) { //super.paintComponent(g); ImageIcon ii = new ImageIcon("registerImages/northBack.jpg");... -
[JAVA]①重绘JPanel面板,设置窗体背景图片
2017-09-06 14:23:52由于在网上查询的方法众多,而且方法有的地方复杂化,其实不用特别复杂编写代码,只要关键点的地方写对了,就可以运行。 此写法本人整理了网上思路编写,简单明了... * 自定义背景图片,重绘JPanel面板的paintComponent -
JPanel修改背景色或背景图片
2018-07-13 08:52:241.在开发中如果只有一个JPanel需要白色背景色,那完全可以使用JPanel然后再将JPanel背景色设置为白色即可。 import java.awt.Color; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.... -
(转)如何在JPanel面板中设置背景图片
2019-09-28 16:42:47... SCAU_QUE: 由于遇见一些人出现利用JLabel标签来给面板添加背景,噢,不可以说是背景,仅仅是 添加了一张图片而已。 转载于:https://www.cnblogs.com/SCAU_que/articles/1752677.html -
swing JPanel设置背景图 拉伸、平铺、居中
2021-02-27 22:15:31import java.awt.BorderLayout;import java.awt.Graphics;import java.awt.Image;import javax.swing.JFrame;import javax.swing.JPanel;.../*** 可设置背景图片的JPanel,提供了三种显示背景图片的方式:居中... -
JPanel如何设置背景图片
2021-02-12 22:13:55} class NewPanel extends JPanel { public NewPanel() { } public void paintComponent(Graphics g) { int x = 0, y = 0; ImageIcon icon = new ImageIcon("003.jpg");// 003.jpg是测试图片在项目的根目录下 g.... -
将JPanel背景设置为透明
2021-02-27 22:17:10将JPanel背景设置为透明我的代码是import java.awt.*;import javax.swing.*;import com.sun.jna.*;import uk.co.caprica.vlcj.component.*;import uk.co.caprica.vlcj.runtime.*;public class Main... -
Swing 关于JPanel背景图片、JButton按钮不显示的解决办法
2017-11-15 18:13:51本文解决问题: 1.背景图片正常显示,而 ...为 JPanel 设置背景图片常用的两种方式: 1.定义一个 ImageIcon 对象,并指定图片。把这个 ImageIcon 放到一个 JLabel 中,再将这个 JLabel 放到要显示的 JPanel 中。 -
Java——JPanel背景图片
2020-12-15 15:07:35从新定义一个buildPanel类用来作为图片... this.setTitle("JPanel背景图片");//窗口名字 this.setSize(1400, 800);//窗口大小 this.setLocationRelativeTo(null);//窗口居中对齐 默认对齐 this.setDefaultCloseO -
java 设置JPanelyou 背景图片 并且上层JPanel 不会覆盖下层JPanel背景图片
2018-03-24 11:04:28public class backpic extends JPanel { String strpic = new String();//继承这个类的时候 传一个图片位置的字符串 public backpic(String strpic) { this.strpic = strpic; }pu... -
请问怎么在JPanel中添加图片啊
2018-12-20 09:23:43java ``` package PPS; import java.awt.BorderLayout;...import java.awt.EventQueue;... JPanel panel = new JPanel(); panel.setBounds(14, 79, 96, 79); contentPane.add(panel); } } ``` -
小试牛刀(JPanel上设置背景图片)
2021-03-06 18:28:35评论#re: 小试牛刀(JPanel上设置背景图片)2008-05-30 14:09晴天这东西都敢发出来...回复更多评论#re: 小试牛刀(JPanel上设置背景图片)2008-05-30 14:10相信咳咳...我注意你很久了 =.=.....你别说..这简单的 阅读的人... -
JPanel 实现背景图片
2021-02-12 14:55:35JAVA 实现背景图片JPanel 实现背景图片必须要重写paintComponet()方法import java.awt.*;import java.Swing.*;public class JFrameDemo extends JFrame{java.net.URL imageURL = getClass().getResourse("bg.jpg");... -
java开发中我设置了一个JPanel里面装了图片作为背景 但是为什么没有显示出来背景图片
2013-06-05 12:26:40为什么我的ip,h还有rs,drgl这三个地方的背景图片 无法显示或者切换? p4=new JPanel(new BorderLayout()); p2=new JPanel(new CardLayout()); //处理p2,p3,p4 p2_lab1=new JLabel(new ImageIcon(... -
java – 如何设置JPanel的透明背景?
2021-02-26 13:29:39或者,考虑The Glass Pane中讨论的The Glass Pane....附录:使用GlassPaneDemo,我添加了一张图片:/* Set up the content pane, where the "main GUI" lives. */frame.add(changeButton, BorderLayout.SO...