📄 myframe.java
字号:
package frame;import java.awt.*;import java.awt.event.*;import java.beans.PropertyVetoException;import java.io.File;import java.io.IOException;import java.net.MalformedURLException;import java.net.URL;import java.util.Vector;import javax.swing.*;import org.jdesktop.layout.GroupLayout;import org.jdesktop.layout.LayoutStyle;import javax.media.*;public class MyFrame extends JFrame implements ActionListener ,ComponentListener,MouseMotionListener,Runnable{ private static final long serialVersionUID = 1L; private Menu Menu1; private Menu Menu2; private Menu Menu3; private Menu Menu4; private Menu playChoice; private Menu showSize; private MenuBar MenuBar1; private MenuItem openItem1; private MenuItem openUrl; private MenuItem exit; private MenuItem playItem; private MenuItem size0; private MenuItem size1; private MenuItem size2; private MenuItem showList; private MenuItem help; private MenuItem about; private JFileChooser jfc; private JButton stop; private JDesktopPane desktop; private JList jList1; private DefaultListModel listmodel; private JButton play; private JPanel jPanel4; private JPanel jPanel3; private JPanel jPanel2; private JPanel jPanel1; private MenuItem choice1; private MenuItem choice2; private JScrollPane jScrollPane_IL; private JPopupMenu popupMenu1; private JMenuItem add; private JButton nextVedio; private JButton preVedio; private JMenuItem delete; private File fileUrl; private String path; private Player player; public int isshowlist; private Dimension size; private PlayerC pc; public int isfullscreen; public int isplay; private Dimension changsize; private Vector <String> v; public MyFrame() { super("Cat_play"); jfc=new JFileChooser(); v=new Vector <String>(); } public void run() { isshowlist=0; isfullscreen=0; isplay=0; listmodel=new DefaultListModel(); try { GroupLayout thisLayout = new GroupLayout((JComponent)getContentPane()); getContentPane().setLayout(thisLayout); { jPanel1 = new JPanel(); GroupLayout jPanel1Layout = new GroupLayout((JComponent)jPanel1); jPanel1.setLayout(jPanel1Layout); { jPanel2 = new JPanel(); BorderLayout jPanel2Layout = new BorderLayout(); jPanel2.setLayout(jPanel2Layout); jPanel2.setBackground(new java.awt.Color(0,0,0)); { jPanel2.setSize(jPanel1.getSize()); desktop = new JDesktopPane(); desktop.setBackground(new java.awt.Color(0,0,0)); jPanel2.add(desktop, BorderLayout.CENTER); desktop.setPreferredSize(new java.awt.Dimension(jPanel1.getWidth(), jPanel1.getHeight())); } } { jPanel3 = new JPanel(); BorderLayout jPanel3Layout = new BorderLayout(); jPanel3.setLayout(jPanel3Layout); } { jPanel4 = new JPanel(); GroupLayout jPanel4Layout = new GroupLayout((JComponent)jPanel4); jPanel4.setLayout(jPanel4Layout); { play = new JButton(new ImageIcon("1.jpg")); play.addActionListener(this); } { stop = new JButton(new ImageIcon("2.jpg")); stop.addActionListener(this); jList1=new JList(listmodel); jList1.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); jList1.setBorder(BorderFactory.createTitledBorder("播放列表")); jList1.setPreferredSize(new java.awt.Dimension(171, 164)); { jScrollPane_IL = new JScrollPane(jList1); jPanel3.add(jScrollPane_IL, BorderLayout.CENTER); jScrollPane_IL.setSize(jPanel3.getSize()); } } { preVedio = new JButton(new ImageIcon("3.jpg")); preVedio.addActionListener(this); } { nextVedio = new JButton(new ImageIcon("4.jpg")); nextVedio.addActionListener(this); } jPanel4Layout.setHorizontalGroup(jPanel4Layout.createSequentialGroup() .addPreferredGap(LayoutStyle.RELATED) .add(play, GroupLayout.PREFERRED_SIZE, 80, GroupLayout.PREFERRED_SIZE) .add(0) .add(stop, GroupLayout.PREFERRED_SIZE, 48, GroupLayout.PREFERRED_SIZE) .add(0) .add(preVedio, GroupLayout.PREFERRED_SIZE, 48, GroupLayout.PREFERRED_SIZE) .add(0) .add(nextVedio, GroupLayout.PREFERRED_SIZE, 48, GroupLayout.PREFERRED_SIZE) .addContainerGap(416, 416)); jPanel4Layout.setVerticalGroup(jPanel4Layout.createSequentialGroup() .add(jPanel4Layout.createParallelGroup(GroupLayout.BASELINE) .add(GroupLayout.BASELINE, play, GroupLayout.PREFERRED_SIZE, 43, GroupLayout.PREFERRED_SIZE) .add(GroupLayout.BASELINE, stop, GroupLayout.PREFERRED_SIZE, 43, GroupLayout.PREFERRED_SIZE) .add(GroupLayout.BASELINE, preVedio, GroupLayout.PREFERRED_SIZE, 43, GroupLayout.PREFERRED_SIZE) .add(GroupLayout.BASELINE, nextVedio, GroupLayout.PREFERRED_SIZE, 43, GroupLayout.PREFERRED_SIZE)) .addContainerGap(58, 58)); } jPanel1Layout.setHorizontalGroup(jPanel1Layout.createParallelGroup() .add(GroupLayout.LEADING, jPanel1Layout.createSequentialGroup() .add(jPanel2, GroupLayout.PREFERRED_SIZE, 514, GroupLayout.PREFERRED_SIZE) .add(jPanel3, GroupLayout.PREFERRED_SIZE, 174, GroupLayout.PREFERRED_SIZE)) .add(GroupLayout.LEADING, jPanel4, 0,688, Short.MAX_VALUE)); jPanel1Layout.setVerticalGroup(jPanel1Layout.createSequentialGroup() .add(jPanel1Layout.createParallelGroup() .add(GroupLayout.LEADING, jPanel2, GroupLayout.PREFERRED_SIZE, 334, GroupLayout.PREFERRED_SIZE) .add(GroupLayout.LEADING, jPanel3, GroupLayout.PREFERRED_SIZE, 334, GroupLayout.PREFERRED_SIZE)) .add(jPanel4, 0, 334, Short.MAX_VALUE)); } thisLayout.setVerticalGroup(thisLayout.createSequentialGroup() .add(jPanel1, 0, 350, Short.MAX_VALUE)); thisLayout.setHorizontalGroup(thisLayout.createSequentialGroup() .add(jPanel1, 0, 680, Short.MAX_VALUE)); } catch(Exception e) { e.printStackTrace(); } //添加右键菜单项 { popupMenu1 = new JPopupMenu(); add=new JMenuItem("添加"); delete=new JMenuItem("删除"); //setAlwaysOnTop(true); popupMenu1.add(add); popupMenu1.add(delete); //jList1.add(popupMenu1); add.addActionListener(this); delete.addActionListener(this); } jList1.addMouseListener(new java.awt.event.MouseAdapter() { public void mousePressed(MouseEvent e) { this_mousePressed(e); }}); //窗体菜单 { MenuBar1 = new MenuBar(); setMenuBar(MenuBar1); MenuShortcut oShortcut= new MenuShortcut(KeyEvent.VK_O, true); openItem1=new MenuItem("openfile",oShortcut); openItem1.addActionListener(this); MenuShortcut uShortcut= new MenuShortcut(KeyEvent.VK_U, true); openUrl=new MenuItem("openurl",uShortcut); openUrl.addActionListener(this); MenuShortcut eShortcut= new MenuShortcut(KeyEvent.VK_E, true); exit=new MenuItem("退出",eShortcut); exit.addActionListener(this); MenuShortcut pShortcut= new MenuShortcut(KeyEvent.VK_P, true); playItem=new MenuItem("播放",pShortcut); playItem.addActionListener(this); //playItem.setMnemonic('P'); //playItem.setAccelerator(KeyStroke.getKeyStroke('P',java.awt.Event.CTRL_MASK,false)); playChoice=new Menu("播放选项"); //playChoice.setMnemonic('C'); //playChoice.setAccelerator(KeyStroke.getKeyStroke('C',java.awt.Event.CTRL_MASK,false)); MenuShortcut dShortcut= new MenuShortcut(KeyEvent.VK_D, true); showList=new MenuItem("显示列表",dShortcut); //showList.setMnemonic('D'); //showList.setAccelerator(KeyStroke.getKeyStroke('D',java.awt.Event.CTRL_MASK,false)); showList.addActionListener(this); MenuShortcut hShortcut= new MenuShortcut(KeyEvent.VK_H, true); help=new MenuItem("帮助",hShortcut); help.addActionListener(this); //help.setMnemonic('H'); //help.setAccelerator(KeyStroke.getKeyStroke('H',java.awt.Event.CTRL_MASK,false)); MenuShortcut aShortcut= new MenuShortcut(KeyEvent.VK_A, true); about=new MenuItem("关于",aShortcut); about.addActionListener(this); //about.setMnemonic('A'); //about.setAccelerator(KeyStroke.getKeyStroke('A',java.awt.Event.CTRL_MASK,false)); size0=new MenuItem("原始大小"); size1=new MenuItem("双倍大小"); size2=new MenuItem("全屏播放"); size0.addActionListener(this); size1.addActionListener(this); size2.addActionListener(this); Menu1 = new Menu("file"); Menu2=new Menu("play"); Menu3=new Menu("show"); Menu4=new Menu("help"); showSize=new Menu("窗体显示大小"); choice1=new MenuItem("全部循环"); choice2=new MenuItem("单曲循环"); playChoice.add(choice1); playChoice.add(choice2); showSize.add(size0); showSize.add(size1); showSize.add(size2); MenuBar1.add(Menu1); MenuBar1.add(Menu2); MenuBar1.add(Menu3); MenuBar1.add(Menu4); Menu1.add(openItem1); Menu1.add(openUrl); Menu1.add(exit); Menu2.add(playItem); Menu2.add(playChoice); Menu3.add(showList); Menu3.add(showSize); Menu4.add(help); Menu4.add(about); this.setIconImage(Toolkit.getDefaultToolkit().getImage("5.jpg")); } pack(); setSize(707, 482); addComponentListener(this); addMouseMotionListener(this); size=getSize(); } public void actionPerformed(ActionEvent e) { if(e.getSource()==openItem1) { jfc.setDialogTitle("open file dialogue"); int result=jfc.showOpenDialog(this); if(result==JFileChooser.APPROVE_OPTION) { fileUrl=jfc.getSelectedFile(); path=fileUrl.getAbsolutePath(); v.add(path); listmodel.addElement(fileUrl.getName()); } if(isplay==1) { stop(); } //changeoriginal(); play(); } if(e.getSource()==openUrl) { path=JOptionPane.showInputDialog("请用户输入url:");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -