java實現窗體JFrame加載動態圖片


public class MyMusic extends JFrame implements ActionListener{
	private JMenuBar jmb;
	private JMenu jm;
	private JMenuItem jml;
	private static  Image image;
	private MyPanel mp=null;
	private JButton paly;

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		new MyMusic();
	}
	
	public MyMusic() {
		// 初始化控件
		jmb=new JMenuBar();
		jm=new JMenu("文件");
		jml=new JMenuItem("File") ;
		jml.addActionListener(this);//給file注冊監聽事件
		jmb.add(jm);
		jm.add(jml);
		//得到圖片的資源
		image=Toolkit.getDefaultToolkit().createImage(MyMusic.class.getResource("/music.gif"));
		mp=new MyPanel();
		mp.setLayout(null);
		
		paly=new JButton("播放");
		
		mp.add(paly);
		
		this.add(mp);
		this.setJMenuBar(jmb);	
	
		//處理主窗體
		this.setTitle("java 音樂播放器");
		this.setSize(600, 600);
		this.setLocationRelativeTo(null);
		this.setResizable(false);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setVisible(true);
	}

	//給按鈕設置監聽的方法
	@Override
	public void actionPerformed(ActionEvent e) {
		
		if(e.getActionCommand().equals("File")){
			JFileChooser jfc=new JFileChooser();
			jfc.setDialogTitle("請選擇文件...");
			jfc.setSelectedFile(new File("*.*"));
			jfc.showOpenDialog(null);
			jfc.setVisible(true);
			
			//得到用戶的路徑
			String FileName=jfc.getSelectedFile().getAbsolutePath();
			System.out.println(FileName);
		}
		
	}
	
	//自己寫一個JPanel 繼承JPanel 然后在JPanel上畫圖片
	class MyPanel extends JPanel{
		
		
		@Override
		public void paint(Graphics g) {
			// TODO Auto-generated method stub
			super.paint(g);
			g.drawImage(image,0,0,this);
		}
		
		
	}

}

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM