1、该程序中用到如下几个工具包,为:import java.awt.Dimension;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPasswordField;import javax.swing.
2、JTextField;import java.awt.*;import javax.swing.*;import java.io.*;import java.awt.event.*;import java.applet.AudioClip;import java.applet.Applet;import java.awt.Frame;import .MalformedURLException;import .URI;import .URL;。四系统功能模块结构 该电子相册程序分为登录相关模块、背景音乐播放模块、相册相关模块这3个模块。五系统实现 import .www.content.audi
3、o.wav;public class PictureExplorer extends JFrame implements ActionListener private JLabel imagelabel; private JPanel panel; private int i=0;String filename; File file; private ImageIcon image; private JButton startbutton,stopbutton,previousbutton,nextbutton; private JMenuBar menubar; private JMenu
4、menu; private JMenuItem menuitemopen,menuitemexit; private JFileChooser chooser; File f; URI uri; URL url; public PictureExplorer() try f = new File(/Users/kiminatosaku/Downloads/1.wav); uri = f.toURI(); url = uri.toURL();/解析地址 AudioClip aau; aau = Applet.newAudioClip(url); aau.loop(); /循环播放 catch (
5、Exception e) e.printStackTrace(); imagelabel=new JLabel(); panel=new JPanel(); image=new ImageIcon(); startbutton=new JButton(放大 stopbutton=new JButton(缩小 previousbutton=new JButton(上一张 nextbutton=new JButton(下一张 menubar=new JMenuBar(); menu=new JMenu(文件 menuitemopen=new JMenuItem(打开文件 menuitemexit=
6、new JMenuItem(退出 chooser=new JFileChooser(); public void launchPictureExplorerTest() Container c=getContentPane(); startbutton.addActionListener(this); stopbutton.addActionListener(this); previousbutton.addActionListener(this); nextbutton.addActionListener(this); menuitemopen.addActionListener(this)
7、; menuitemexit.addActionListener(this); menubar.add(menu); menu.add(menuitemopen); menu.add(menuitemexit); imagelabel.setIcon(image); imagelabel.setHorizontalAlignment(SwingConstants.CENTER); c.add(imagelabel,Center panel.add(previousbutton); panel.add(nextbutton); panel.add(startbutton); panel.add(
8、stopbutton); c.add(panel,South chooser.setFileSelectionMode(JFileChooser.FILES_ONLY); chooser.setCurrentDirectory(new File(.); /设置文件选择器当前目录 chooser.setFileFilter(new javax.swing.filechooser.FileFilter() public boolean accept(File file) /可接受的文件类型 String name = file.getName().toLowerCase(); /获取文件名 ret
9、urn name.endsWith(.gif) | name.endsWith(.jpg.jpeg | file.isDirectory(); public String getDescription() return 图像文件; ); setJMenuBar(menubar); setSize(800,600); setLocation(100,100); setTitle(filename); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); public void actionPerformed(Actio
10、nEvent e) Object source=e.getSource(); if(source=menuitemopen) int result = chooser.showOpenDialog(this); /显示文件选择对话框 if (result = JFileChooser.APPROVE_OPTION) String filename = chooser.getSelectedFile().getAbsolutePath(); image=new ImageIcon(filename); ImageIcon icon=new ImageIcon(); icon=image; dou
11、ble widthratio=image.getIconWidth()*1.0/imagelabel.getWidth(); double heightratio=image.getIconHeight()*1.0/imagelabel.getWidth(); if(widthratio=1&heightratio=widthratio) height=imagelabel.getHeight(); else width=imagelabel.getWidth(); image=new ImageIcon(icon.getImage().getScaledInstance(width,heig
12、ht,Image.SCALE_SMOOTH); imagelabel.setIcon(image); else if(source=menuitemexit) System.exit(1); else if(source=previousbutton) File files; file=chooser.getSelectedFile().getParentFile(); files=file.listFiles(); if(i0&ifiles.length) i-; /i else else if(source=nextbutton)=0& i+; else if(source=startbu
13、tton) height=imagelabel.getHeight()*2; width=imagelabel.getWidth()*2; else if(source=stopbutton) double width=-1,height=-1; height=imagelabel.getHeight()*0.5; width=imagelabel.getWidth()*0.5; image=new ImageIcon(icon.getImage().getScaledInstance(int)width,(int)height,Image.SCALE_SMOOTH); public stat
14、ic void main(String arges) final String userName = abc final String passwrod = 123 JFrame jFrame = new JFrame(登陆界面 Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize(); jFrame.setBounds(int)dimension.getWidth() - 200) / 2, (int)dimension.getHeight() - 300) / 2, 200, 150); jFrame.setResi
15、zable(false); jFrame.setLayout(null); jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JLabel label1 = new JLabel(姓名 label1.setBounds(10, 10, 100, 30); jFrame.add(label1); JLabel label2 = new JLabel(密码 label2.setBounds(10, 40, 100, 30); jFrame.add(label2); final JTextField text1 = new JTextFie
16、ld(); text1.setBounds(50, 15, 130, 20); jFrame.add(text1); final JPasswordField text2 = new JPasswordField(); text2.setBounds(50, 45, 130, 20); jFrame.add(text2); JButton button = new JButton(Login button.setBounds(10, 75, 170, 40); button.addActionListener(new ActionListener() Override public void
17、actionPerformed(ActionEvent e) if(userName.equals(text1.getText() & passwrod.equals(text2.getText() JOptionPane.showMessageDialog(null, 登陆成功, 提示, JOptionPane.INFORMATION_MESSAGE); else 错误, JOptionPane.ERROR_MESSAGE); text1.setText( text2.setText( ); jFrame.add(button); jFrame.setVisible(true); PictureExplorer pe=new PictureExplorer(); pe.launchPictureExplorerTest(); new PictureExplorer();
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1