java怎么在JFrame中显示动态图片?

java怎么在JFrame中显示动态图片?,第1张

试了一下,从网上找了个GIF

可以用啊

--------------------------------------------------------------------------------------------

import java.awt.Graphics

import javax.swing.ImageIcon

import javax.swing.JFrame

import javax.swing.JPanel

public class ImageApp extends JFrame {

public ImageApp() {

setDefaultCloseOperation(EXIT_ON_CLOSE)

setLocationRelativeTo(null)

setSize(400, 300)

setResizable(false)

getContentPane().setLayout(null)

JPanel panel = new ImagePanel()

panel.setBounds(0, 0, 400, 300)

getContentPane().add(panel)

setVisible(true)

}

public static void main(String[] args) {

new ImageApp()

}

class 简坦ImagePanel 历毕extends JPanel {

public void paint(Graphics g) {

super.paint(g)

// ImageIcon icon = new ImageIcon("D:\\1.jpg")

ImageIcon icon = new ImageIcon("D:\\14405937jqhjsppeninjf9.gif")

g.drawImage(icon.getImage(), 0, 0, 400, 300, 拦烂桐this)

}

}

}

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

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/bake/11979681.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-20
下一篇2023-05-20

发表评论

登录后才能评论

评论列表(0条)

    保存