import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.ImageIcon;
import java.awt.event.ActionListener;
import javax.swing.Timer;
import java.awt.event.ActionEvent;
import java.io.File;public class full_Frame extends JFrame {
BorderLayout borderLayout1 = new BorderLayout();
static Timer AutoTimer;
ImageIcon icon = new ImageIcon("./src/image/1.jpg");
JLabel jLabel1 = new JLabel(icon);
private String[] getFile()
{
File f=new File("./src/image/");
return f.list();
}
int i=1;
String[] files=getFile(); public full_Frame() { try {
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
public void jbInit() throws Exception {
getContentPane().setLayout(borderLayout1); this.getContentPane().add(jLabel1, java.awt.BorderLayout.CENTER); AutoTimer = new Timer(3000, new ActionListener() { public void actionPerformed(ActionEvent e) {
if (i ==files.length-1)
i = 1;
icon = new ImageIcon("./src/image/" + files[i]);
jLabel1.setIcon(icon);
jLabel1.repaint();
i++;
}
});
final JFrame fram = new JFrame("full screen");
fram.getContentPane().add(jLabel1, BorderLayout.CENTER);
fram.setExtendedState(JFrame.MAXIMIZED_BOTH);
fram.setAlwaysOnTop(true);
fram.setUndecorated(true);
fram.setVisible(true); AutoTimer.start(); fram.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_ESCAPE||e.getKeyCode() == KeyEvent.VK_C) { fram.setVisible(false);
fram.dispose();
AutoTimer.stop();
}
}
});
}
}
////////////////////////////////////
import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.ImageIcon;
import java.awt.event.ActionListener;
import javax.swing.Timer;
import java.awt.event.ActionEvent;
import java.io.File;public class full_Frame extends JFrame {
BorderLayout borderLayout1 = new BorderLayout();
static Timer AutoTimer;
ImageIcon icon = new ImageIcon("./src/image/1.jpg");
JLabel jLabel1 = new JLabel(icon);
private String[] getFile()
{
File f=new File("./src/image/");
return f.list();
}
int i=1;
String[] files=getFile(); public full_Frame() { try {
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
public void jbInit() throws Exception {
getContentPane().setLayout(borderLayout1); this.getContentPane().add(jLabel1, java.awt.BorderLayout.CENTER); AutoTimer = new Timer(3000, new ActionListener() { public void actionPerformed(ActionEvent e) {
if (i ==files.length-1)
i = 1;
icon = new ImageIcon("./src/image/" + files[i]);
jLabel1.setIcon(icon);
jLabel1.repaint();
i++;
}
});
final JFrame fram = new JFrame("full screen");
fram.getContentPane().add(jLabel1, BorderLayout.CENTER);
fram.setExtendedState(JFrame.MAXIMIZED_BOTH);
fram.setAlwaysOnTop(true);
fram.setUndecorated(true);
fram.setVisible(true); AutoTimer.start(); fram.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_ESCAPE||e.getKeyCode() == KeyEvent.VK_C) { fram.setVisible(false);
fram.dispose();
AutoTimer.stop();
}
}
});
}
}
////////////////////////////////////
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.BorderLayout;
import javax.swing.BorderFactory;
import java.awt.Color;
import javax.swing.border.TitledBorder;public class Player_Frame extends JFrame {
JPanel Pan;
BorderLayout borderLayout1 = new BorderLayout();
JPanel jPanel1 = new JPanel();
JButton jBuDown = new JButton();
JButton jBuUp = new JButton();
JButton jBuLast = new JButton();
JButton jBuFirst = new JButton();
JButton jBuAuto = new JButton();
JSplitPane jSplitPane1 = new JSplitPane();
JScrollPane jScrollPane1 = new JScrollPane();
JScrollPane jScrollPane2 = new JScrollPane(); static Timer AutoTimer; JTree jTree1 = new JTree();
ImageIcon icon = new ImageIcon("./src/image/1.jpg");
JLabel jLabel1 = new JLabel(icon);
public String[] getFile()
{
File f=new File("./src/image/");
return f.list();
}
int i=1;
String[] files=getFile(); TitledBorder titledBorder1 = new TitledBorder("");
TitledBorder titledBorder2 = new TitledBorder("");
JTextArea jTextArea1 = new JTextArea();
JTextField jTextField1 = new JTextField(3);
JButton jButShow = new JButton(); public Player_Frame() {
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
jbInit(); } catch (Exception e) {
e.printStackTrace();
}
}
public void jbInit() throws Exception { Pan = (JPanel) getContentPane();
Pan.setLayout(borderLayout1);
setSize(new Dimension(690, 400));
setTitle("Photo_Player");
jBuDown.setBackground(SystemColor.inactiveCaptionBorder);
jBuDown.setFont(new java.awt.Font("黑体", Font.PLAIN, 16));
jBuDown.setBorder(BorderFactory.createLineBorder(Color.black));
jBuDown.setPreferredSize(new Dimension(80, 25));
jBuDown.setText("Down");
jBuDown.addActionListener(new Player_Frame_jBuDown_actionAdapter(this));
jBuUp.setBackground(SystemColor.inactiveCaptionText);
jBuUp.setFont(new java.awt.Font("黑体", Font.PLAIN, 16));
jBuUp.setForeground(Color.red);
jBuUp.setBorder(BorderFactory.createLineBorder(Color.black));
jBuUp.setPreferredSize(new Dimension(80, 25));
jBuUp.setText("Up");
jBuUp.addActionListener(new Player_Frame_jBuUp_actionAdapter(this));
jBuLast.setBackground(UIManager.getColor("ToolBar.background"));
jBuLast.setFont(new java.awt.Font("黑体", Font.PLAIN, 16));
jBuLast.setBorder(BorderFactory.createLineBorder(Color.black));
jBuLast.setPreferredSize(new Dimension(80, 25));
jBuLast.setText("Last");
jBuLast.addActionListener(new Player_Frame_jBuLast_actionAdapter(this));
jBuFirst.setBackground(Color.lightGray);
jBuFirst.setFont(new java.awt.Font("黑体", Font.PLAIN, 16));
jBuFirst.setForeground(Color.red);
jBuFirst.setBorder(BorderFactory.createLineBorder(Color.black));
jBuFirst.setPreferredSize(new Dimension(80, 25));
jBuFirst.setIcon(null);
jBuFirst.setText("First");
jBuFirst.addActionListener(new Player_Frame_jBuFrist_actionAdapter(this));
jBuAuto.setBackground(Color.lightGray);
jBuAuto.setFont(new java.awt.Font("黑体", Font.PLAIN, 16));
jBuAuto.setForeground(Color.red);
jBuAuto.setBorder(BorderFactory.createLineBorder(Color.black));
jBuAuto.setPreferredSize(new Dimension(80, 25));
jBuAuto.setActionCommand("AutoRun");
jBuAuto.setText("AutoRun");
jBuAuto.addActionListener(new Player_Frame_jBuAuto_actionAdapter(this));
jLabel1.setText("");
jPanel1.setBackground(Color.green);
jPanel1.setBorder(BorderFactory.createLoweredBevelBorder());
jTextArea1.setSelectionStart(5);
jTextField1.setMaximumSize(new Dimension(5, 5));
jTextField1.setSelectedTextColor(Color.lightGray);
jTextField1.setSelectionColor(Color.white);
jTextField1.setSelectionEnd(4);
jButShow.setBackground(Color.white);
jButShow.setFont(new java.awt.Font("黑体", Font.PLAIN, 16));
jButShow.setBorder(BorderFactory.createLineBorder(Color.black));
jButShow.setPreferredSize(new Dimension(80, 25));
jButShow.setText("Show");
jButShow.addActionListener(new Player_Frame_jButShow_actionAdapter(this));
jPanel1.add(jBuFirst);
jPanel1.add(jBuLast);
jPanel1.add(jBuUp);
jPanel1.add(jBuDown);
jPanel1.add(jBuAuto);
jPanel1.add(jTextArea1);
jPanel1.add(jTextField1);
jPanel1.add(jButShow);
Pan.add(jSplitPane1, java.awt.BorderLayout.CENTER);
jSplitPane1.add(jScrollPane1, JSplitPane.RIGHT);
jScrollPane1.getViewport().add(jLabel1);
jSplitPane1.add(jScrollPane2, JSplitPane.LEFT);
Pan.add(jPanel1, java.awt.BorderLayout.SOUTH);
jScrollPane2.getViewport().add(jTree1);
jBuUp.setEnabled(false);
jBuFirst.setEnabled(false); String A=" "+i;
jTextField1.setText(A);
// if (i ==files.length)
if (i ==files.length-1)
i = 1;
//i=files.length%i;
icon = new ImageIcon("./src/image/" + files[i]);
jLabel1.setIcon(icon);
jLabel1.repaint();
i++; }
}); } public void jBuFrist_actionPerformed(ActionEvent e) {
if (i >1 && i <=files.length) {
i = 1;
icon = new ImageIcon("./src/image/" + files[i]);
jLabel1.setIcon(icon);
jBuUp.setEnabled(false);
jBuFirst.setEnabled(false);
jBuDown.setEnabled(true);
jBuLast.setEnabled(true);
String A=" "+i;
jTextField1.setText(A);
}
} public void jBuLast_actionPerformed(ActionEvent e) {
if (i >=1 && i <=files.length) {
// i = files.length;
i = files.length-2;
icon = new ImageIcon("./src/image/" + files[i]);
jLabel1.setIcon(icon);
jBuDown.setEnabled(false);
jBuUp.setEnabled(true);
jBuFirst.setEnabled(true);
jBuLast.setEnabled(false);
String A=" "+i;
jTextField1.setText(A);
}
} public void jBuUp_actionPerformed(ActionEvent e) {
if (i >=1 && i < files.length) {
jBuDown.setEnabled(true);
jBuUp.setEnabled(true);
jBuFirst.setEnabled(true);
jBuLast.setEnabled(true);
--i;
if (i == 1) {
jBuUp.setEnabled(false);
jBuFirst.setEnabled(false);
}
icon = new ImageIcon("./src/image/" + files[i]);
jLabel1.setIcon(icon);
String A=" "+i;
jTextField1.setText(A);
}
} public void jBuDown_actionPerformed(ActionEvent e) {
if (i >=1 && i <=files.length) {
jBuDown.setEnabled(true);
jBuUp.setEnabled(true);
jBuFirst.setEnabled(true);
jBuLast.setEnabled(true);
++i;
// if (i==(files.length-1)) {
if (i==(files.length-2)) {
jBuDown.setEnabled(false);
jBuLast.setEnabled(false);
}
icon = new ImageIcon("./src/image/" + files[i]);
jLabel1.setIcon(icon);
String A=" "+i;
jTextField1.setText(A);
}
}
public void jBuAuto_actionPerformed(ActionEvent e) { new full_Frame();
} public void jButShow_actionPerformed(ActionEvent e) {
String b=jTextField1.getText();
try{
int x = Integer.parseInt(b.trim());
if(x>files.length){
x=files.length-2;
String A=" "+x;
jTextField1.setText(A);
}
if(x<=0){
x=1;
String A=" "+x;
jTextField1.setText(A);
}
icon = new ImageIcon("./src/image/" + files[x]);
jLabel1.setIcon(icon);
}catch(IndexOutOfBoundsException ae){
System.out.println(e.toString());
}
}
}class Player_Frame_jButShow_actionAdapter implements ActionListener {
private Player_Frame adaptee;
Player_Frame_jButShow_actionAdapter(Player_Frame adaptee) {
this.adaptee = adaptee;
} public void actionPerformed(ActionEvent e) {
adaptee.jButShow_actionPerformed(e);
}
}
class Player_Frame_jBuAuto_actionAdapter implements ActionListener {
private Player_Frame adaptee;
Player_Frame_jBuAuto_actionAdapter(Player_Frame adaptee) {
this.adaptee = adaptee;
} public void actionPerformed(ActionEvent e) {
adaptee.jBuAuto_actionPerformed(e);
}
}
class Player_Frame_jBuDown_actionAdapter implements ActionListener {
private Player_Frame adaptee;
Player_Frame_jBuDown_actionAdapter(Player_Frame adaptee) {
this.adaptee = adaptee;
} public void actionPerformed(ActionEvent e) {
adaptee.jBuDown_actionPerformed(e);
}
}
class Player_Frame_jBuUp_actionAdapter implements ActionListener {
private Player_Frame adaptee;
Player_Frame_jBuUp_actionAdapter(Player_Frame adaptee) {
this.adaptee = adaptee;
} public void actionPerformed(ActionEvent e) {
adaptee.jBuUp_actionPerformed(e);
}
}
class Player_Frame_jBuLast_actionAdapter implements ActionListener {
private Player_Frame adaptee;
Player_Frame_jBuLast_actionAdapter(Player_Frame adaptee) {
this.adaptee = adaptee;
} public void actionPerformed(ActionEvent e) {
adaptee.jBuLast_actionPerformed(e);
}
}
class Player_Frame_jBuFrist_actionAdapter implements ActionListener {
private Player_Frame adaptee;
Player_Frame_jBuFrist_actionAdapter(Player_Frame adaptee) {
this.adaptee = adaptee;
} public void actionPerformed(ActionEvent e) {
adaptee.jBuFrist_actionPerformed(e);
}
}
我也知道,也许没有人回答的,哎.
public abstract class BaseFrame extends JFrame
{
protected int i=1;
protected String[] files=getFile(); public String[] getFile()
{
File f=new File("./src/image/");
return f.list();
}
}然后full_frame 和player_frame 都可以继承于BaseFrame
另外,你的代码没有注释,同时命名规范不标准 类应该这样定义 FullFrame PlayerFrame 才标准
protected static int i=1;
那么,当任何一个子类的实例更改了i值,其它实例能获取到最新的值
..................................
静态变量
或者将一个窗体作为参数传入另一窗体.这个 -------->将一个窗体作为参数传入另一窗体.
讲一下啊,..代码.....说明