看看下面的代码,它在一个textarea里插入背景图像,希望对你有帮助。
import javax.swing.*;
import java.awt.*;
import java.net.*;public class BackgroundSample {
public static void main(String args[]) {
JFrame frame = new JFrame();
String url="http://www.china1840-1949.net.cn/xuezhu/wenxue/images/banner.gif";
try {
final ImageIcon imageIcon = new ImageIcon(new URL(url));
//final ImageIcon imageIcon = new ImageIcon("../images/bg.jpg");
JTextArea textArea = new JTextArea()
{
Image image = imageIcon.getImage();
{setOpaque(false);} // instance initializer
public void paintComponent (Graphics g) {
g.drawImage(grayImage, 0, 0, this);
g.drawImage(image, 0, 0, this);
super.paintComponent(g);
}
};
Container content = frame.getContentPane();
content.add(textArea,BorderLayout.NORTH);
frame.setDefaultCloseOperation(3);
frame.setSize(300, 200);
frame.setVisible(true);
}
catch(Exception e){}
}
}
import javax.swing.*;
import java.awt.*;
import java.net.*;public class BackgroundSample {
public static void main(String args[]) {
JFrame frame = new JFrame();
String url="http://www.china1840-1949.net.cn/xuezhu/wenxue/images/banner.gif";
try {
final ImageIcon imageIcon = new ImageIcon(new URL(url));
//final ImageIcon imageIcon = new ImageIcon("../images/bg.jpg");
JTextArea textArea = new JTextArea()
{
Image image = imageIcon.getImage();
{setOpaque(false);} // instance initializer
public void paintComponent (Graphics g) {
g.drawImage(grayImage, 0, 0, this);
g.drawImage(image, 0, 0, this);
super.paintComponent(g);
}
};
Container content = frame.getContentPane();
content.add(textArea,BorderLayout.NORTH);
frame.setDefaultCloseOperation(3);
frame.setSize(300, 200);
frame.setVisible(true);
}
catch(Exception e){}
}
}
import java.awt.*;
import java.awt.event.*;
import javax.swing.text.*;
import java.io.*;public class Test {
JFrame frame;
JTextPane textPane;
File file;
Icon image; public Test(){
frame = new JFrame("JTextPane");
textPane = new JTextPane();
file = new File("ok.gif");
image = new ImageIcon(file.getAbsoluteFile().toString());
} public void insert(String str, AttributeSet attrSet) {
Document doc = textPane.getDocument();
str ="\n" + str ;
try {
doc.insertString(doc.getLength(), str, attrSet);
}
catch (BadLocationException e) {
System.out.println("BadLocationException: " + e);
}
} public void setDocs(String str,Color col,boolean bold,int fontSize) {
SimpleAttributeSet attrSet = new SimpleAttributeSet();
StyleConstants.setForeground(attrSet, col);
//颜色
if(bold==true){
StyleConstants.setBold(attrSet, true);
}//字体类型
StyleConstants.setFontSize(attrSet, fontSize);
//字体大小
insert(str, attrSet);
} public void gui() {
textPane.insertIcon(image);
setDocs("第一行的文字",Color.red,false,20);
setDocs("第二行的文字",Color.BLACK,true,25);
setDocs("第三行的文字",Color.BLUE,false,20);
frame.getContentPane().add(textPane, BorderLayout.CENTER);
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}});
frame.setSize(200,300);
frame.setVisible(true);
}
public static void main(String[] args) {
Test test = new Test();
test.gui();
}}
<------ 树欲静而风不止 ------>