- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java中设置窗体背景图像
首先在java中没有直接可用的方法设置java窗体的背景图像,但是有两种方法可以间接完成设置窗体的背景颜色的设置,一种是利用标签按钮,另一种是面板来设置。
首先介绍一下利用标签设置窗体背景图像。
标签本来是一种简单的组件,但是为什么可以用它来设置窗体的背景图像呢?首先还是先了解一下JFrame中层次结构。JFrame中层次分布以及相对关系是:最底层是JRootPane,
第二层是JlayerPane,最上层是ContentPane(内容面板)。所以一般我们拖放的控件就是放在内容面板中。也就是说我们只需要将背景图片放在第二层中(JLayerPane)中。在把内容面板设置为透明。那么背景图片就成为了你所要的背景图片。实现代码:
JPanel JP=new JPanel(); //创建面板JP对象
getContentPane().add(JP) //将JP面板设置为主面板
Icon I=new ImageIcon(123.jpg); //用原图片123.jpj构造一个ImageIcon对象I。需要注意的是如果图片的路径使用的是相对路径,则图片文件应该存在类文件所在文件夹或者项目的根文件夹中。否则图片的路径必须为绝对路径。
JLabel LB=new JLabel(i); //用指定图片构造标签对象LB
This.getLayeredPane().add(LB, new Integer(Integer.MIN_VALUE)); //放置标签在第二层中
LB.setBounds(0,0,i.getIconWidth(), i.getIconHeight); //设置标签的尺寸就是图片的大小
getConentPane().setOpaque(false); //设置面板为透明色,这样整个框架的背景就不在是内容面板的背景色,而是第二层中标签的图像。
JP.add(LB) ; //添加标签在主面板中
好了用标签做窗体的背景图像的设置就弄好了。但是利用标签设置窗体的背景图像的可扩展性差。并且在标签上不能放置其他控件。如果你在他的上边放置一个按钮控件的话他的整个面板就会乱。这主要是因为java加载组件是有顺序的。作为背景图像的Jlabel的控件一定是放在全部代码的最后。这样背景图片才不会被其他的控件遮盖。从而使整个布局背景错乱。所以采用这种方式设置背景图像有很大的局限性。所以该介绍一下另一种方式了利用面板控件来设置背景图像。
2:通过JPanel面板设置背景窗体图像
首先我们应该清楚JPanel是java容器之一。然而java中的容器是没有设置窗体图像这个属性的。它们只有设置设置背景颜色的功能。但是如果要在JPanel面板中设置窗体背景图像。就需要从写paintComponent(Graphicsg)方法。既把所有的设置的背景图像画上作为JPanel面板的背景图像。实现步骤如下:
首先定义一个Jpanel的子类,由于Jpanel的构造方法不能添加图像。因此在创建这个子类的时候用getImag载入一幅背景图像。在从写paintComponent(Graphics g) 方法时。利用drawImage方法将其逐渐绘制在屏幕上。并将该面板添加在框架中。最后将面板设置为透明:
Import java.awt.*;
Import javax.swing.*;
Public class A
{
Public static void main(String argc[])
{
BJFrame f=new BJFrame ();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
}
Class BJFrame extends JFrame
{
Public BJFrame()
{
setSize(WTH,HHT);
BJFrame p1=new BJFrame();
Container contentPane =getContenPane();
contentPane.add(p1);
p1.setOpaque(true);
}
Public static final int HHT=200;
}
Class BJPanel extends JPanel
{
Image im;
Public BJPanel()
{
Im=Toolkit.getDefaultToolkit().
您可能关注的文档
- Java中设置session的详细解释[1].docx
- Java中调用C生成的DLL.doc
- Java中静态变量的适用场景.docx
- Java主要修饰符的使用.docx
- Java产生随机数的两种方式.doc
- Java代理机制创建动态类.doc
- java代码静态检查工具介绍.doc
- java使用匿名类直接new接口.docx
- Java内部类(innerclass).docx
- JAVA初学入门需掌握的30个基本概念.doc
- 书面表达之建议信(讲义)-中考英语一轮复习(含答案).pdf
- 中考历史复习小众题型类:填空题、改错题、判断题(70题).pdf
- 2024年吉林省县乡教师选调考试《教育学》真题汇编带解析必背【基础题】.pdf
- 2025年中考语文备考之《朝花夕拾》名著导读及考题.pdf
- 小说标题的含义和作用(模拟突破)-2025年中考语文考点突破之小说阅读(解析版).pdf
- 阅读理解之应用文(练习)-中考英语一轮复习(含答案).pdf
- 小说情节作用(模拟突破)-2025年中考语文考点突破之小说阅读(原卷版).pdf
- 小说段落作用(模拟突破)-2025年中考语文考点突破之小说阅读(解析版).pdf
- 小说段落作用(试题专练)-2025年中考语文考点突破之小说阅读(解析版).pdf
- 2025年上海市16区初三语文一模试题汇编之现代文阅读二(记叙文)学生版.pdf
最近下载
- 2024年组织生活会个人发言提纲四篇.docx VIP
- 工业互联网工程技术人员考核试题题库及答案.pdf VIP
- 财务分析报告(通用12篇).pdf VIP
- 2024年化工企业安全管理人员试题试题库真题A4版打印.docx
- 护士长年终述职报告PPT(含完整内容)14.pptx
- 安阳瑞美达清洁能源有限公司陶瓷园区清洁工业燃气集中制气项目环境影响报告书(送审版)全本公示.pdf
- 血液透析医院感染培训(课堂PPT)【54页】.pptx
- 夏普WG-S20电子记事本使用说明书翻译.pdf
- 六年级语文下册《 北京的春节》课件PPT(2022年-2023年).pptx VIP
- 企业视觉形象识别系统VIS报价清单.pdf
文档评论(0)