额,建议直接用Visual Editor来设计窗口程序。这样比你自己写效率高,还直观。
成都创新互联是一家集网站建设,忻城企业网站建设,忻城品牌网站建设,网站定制,忻城网站建设报价,网络营销,网络优化,忻城网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
当然要是想详细研究Swing,那就得找书看了
可以利用标签组件来设置。
具体方法如下:
利用标签组件来设置,具体代码如下:
JPanelpnlMain=new JPanel(); //创建面板pnlMain。
getContentPane().add(pnlMain); //将pnlMain设置为主面板。
Iconi=new ImageIcon("背景.jpg"); /*用源图片“背景.jpg”构造一个ImageIcon对象i,需要注意如果图片的路径使用的是相对路径,则图片文件必须放在类文件所在文件夹或项目的根文件夹中,否则图片的路径必须用绝对路径。*/
JLabellblLogo = new JLabel(i); //用指定的图片构造标签对象lb
this.getLayeredPane().add(lb, new Integer(Integer.MIN_VALUE));
//把标签放在第二层JlayerPane上。
lb.setBounds(0, 0,ii.getIconWidth(),i.getIconHeight());
//设置标签的尺寸,即背景图象的大小。
getConentPane().setOpaque(false); /*把内容面板设置为透明,这样整个框架的背景就不再是内容面板的背景色,而是第二层中标签的图像。*/
pnlMain.add(lb); //将标签添加到主面板pnlMain中。
仅仅是给窗口添加背景的话是很简单的,添加上以下语句(自己去添加变量哈):
label = new JLabel(background); //background为ImageIcon
// 把标签的大小位置设置为图片刚好填充整个面板
label.setBounds(0, 0, this.getWidth(), this.getHeight());
//添加图片到frame的第二层(把背景图片添加到分层窗格的最底层作为背景)
this.getLayeredPane().add(label,new Integer(Integer.MIN_VALUE));
//把内容窗格转化为JPanel,否则不能用方法setOpaque()来使内容窗格透明
jPanel=(JPanel)this.getContentPane();
//设置透明
jPanel.setOpaque(false);
然后你上面那个JPanel p也设置成透明就可以了
这是我以前的一个小代码你可以看看
public class demo_9 extends JFrame {
JSplitPane jsp = null;
JList jlist;
JLabel jlabel;
public static void main(String[] args) {
demo_9 a = new demo_9();
}
public demo_9(){
String []words ={"boy","girl"};
JList jlist = new JList(words);
jlabel = new JLabel(new ImageIcon("Image//真三.gif")); //这里就是引入图片了
//拆分窗格
jsp = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,jlist,jlabel);
jsp.setDividerLocation(70);
//设置可以伸缩
jsp.setOneTouchExpandable(true);
this.add(jsp);
this.setTitle("test");
this.setSize(400,300);
this.setLocation(400,200);
this.setVisible(true);
}
}
步骤:首先先在project里新建个文件夹(Folder),然后把你要插入的图片复制黏贴到这个文件夹里面。
例如我那个引入的图片代码:jlabel = new JLabel(new ImageIcon("Image//真三.gif"));
我new一个folder叫Image,图片名称叫"真三.gif"