完全可以,程序如下,这里把图片和程序放在一块,不放在一起的话。
代码Icon icon=new ImageIcon("1.gif")//要给出图片的完整的路径。
图片资源:
import java.awt.*
import javax.swing.*
public class JFrameTest extends JFrame{
/**
* @param args
*/
private static final long serialVersionUID=1L
JFrameTest(String name){
super(name)
this.setSize(200, 200)//设置窗口大小。
this.setBackground(Color.DARK_GRAY)//设置背景颜色。
this.setLayout(new FlowLayout())//设置顺序布局。
Container con=this.getContentPane()//获取容器。
//设置按钮,为按钮添加图片。
Icon icon=new ImageIcon("1.gif")//根据路径取出图片。
JButton button=new JButton("带图片的按钮",icon)
con.add(button)//添加按钮。
this.setDefaultCloseOperation(DISPOSE_ON_CLOSE)//设置默认的关闭方式。
}
public static void main(String[] args) {
JFrameTest test=new JFrameTest("按钮")
test.setVisible(true)
}
}
运行结果:
//注意://当前目录下要有一个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)
}
}
import java.awt.*import java.awt.event.*
import java.io.*
import javax.swing.*
public class ImageViewer
{
public static void main(String[] args)
{
JFrame frame = new ImageViewerFrame()
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
frame.show()
}
}
class ImageViewerFrame extends JFrame
{
public ImageViewerFrame()
{
setTitle("ImageViewer")
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT)
label = new JLabel()
Container contentPane = getContentPane()
contentPane.add(label)
chooser = new JFileChooser()
chooser.setCurrentDirectory(new File("."))
JMenuBar menuBar = new JMenuBar()
setJMenuBar(menuBar)
JMenu menu = new JMenu("File")
menuBar.add(menu)
JMenuItem openItem = new JMenuItem("Open")
menu.add(openItem)
openItem.addActionListener(new
ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
int r = chooser.showOpenDialog(null)
if(r == JFileChooser.APPROVE_OPTION)
{
String name
= chooser.getSelectedFile().getPath()
label.setIcon(new ImageIcon(name))
}
}
})
JMenuItem exitItem = new JMenuItem("Exit")
menu.add(exitItem)
exitItem.addActionListener(new
ActionListener()
{
public void actionPerformed(ActionEvent event)
{
System.exit(0)
}
})
}
private JLabel label
private JFileChooser chooser
private static final int DEFAULT_WIDTH = 300
private static final int DEFAULT_HEIGHT = 400
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)