import java.awt.Dimension;  
import java.awt.HeadlessException;
import java.awt.Point;  
import java.awt.Color;
import java.awt.Font;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; 
import java.awt.event.ComponentAdapter; 
import java.awt.event.ComponentEvent;
import java.io.File;
import javax.swing.*;
import javax.imageio.*;
import javax.imageio.stream.*;
 public class JFrameTest6 extends JFrame implements ActionListener
{
private  Timer timer;
private JViewport window; 
private  JPanel view; 
private  File[] files;
private  Icon[] icons;
 JFrameTest6()
  
  {
   JButton openbutton=new JButton("OpenFile");
openbutton.setBackground(Color.GRAY);
openbutton.setForeground(Color.WHITE);
openbutton.setFont(new Font("俵俽 僑僔僢僋", Font.BOLD, 22));
openbutton.addActionListener(this);
JPanel p=new JPanel();
p.add(openbutton);
getContentPane().add(p, BorderLayout.CENTER);
  
  }
  public static void main(String[] args)
  {
    JFrameTest6 frame = new JFrameTest6();    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setBounds(10, 10, 300, 200);
    frame.setTitle("sousennha");
frame.setLocationRelativeTo(null);
    frame.setVisible(true);
  }
 
//---------------------------------------------------------------------------------------
  class JFrameTest7  extends JFrame
  {
   JFrameTest7()
{
  initComponents(); 
view = new JPanel();
  window = new JViewport(); 
  window.setView(view);
  getContentPane().add(window);

addComponentListener(new ComponentAdapter(){ 
 public void componentResized(ComponentEvent e) { 
anchor = new Point(); 
anchor.x = -window.getExtentSize().width; 
timer.start(); 

}); 

timer = new Timer(100, new ActionListener(){ 
public void actionPerformed(ActionEvent e){ 
animate(); 

   }); 
timer.setInitialDelay(0);
}

Point anchor; 
private void animate() 

Dimension extSize = window.getExtentSize(); 
Dimension viewSize = view.getPreferredSize(); 
anchor.x += 3;
window.setViewPosition(anchor); 
if (anchor.x > viewSize.width) 
     anchor.x = -extSize.width; 
}  private void initComponents()  { 
    view = new JPanel();
getContentPane().add(view, BorderLayout.CENTER);
window = new JViewport(); 
window.setView(view);
getContentPane().add(window);



  }
  //------------------------------------------------------------------------------------
  public void actionPerformed(ActionEvent e)
  {
  
   JFileChooser filechooser = new JFileChooser();
    filechooser.setMultiSelectionEnabled(true);
    int selected = filechooser.showDialog(JFrameTest6.this,"Select Image File");

if (selected == JFileChooser.APPROVE_OPTION)
{   
    JFrameTest6 frame =new JFrameTest6();
frame.setBounds(10, 10, 800, 200);
     frame.setTitle("ImageView");
     frame.setVisible(true);
 
      File[] files = filechooser.getSelectedFiles();
 
for(int count = 0; count < files.length; count++)
{ ImageIcon[] icons = new ImageIcon[files.length];
         JLabel[] labels = new JLabel[files.length];
icons[count]=new ImageIcon(files[count].getAbsolutePath());
labels[count] = new JLabel(icons[count]);

view.add(labels[count]); 

}

}
 
 }
  
}想把JFrameTest6.java和JFrameTest7,java这两个类分开,写成两个文件的形式

解决方案 »

  1.   

    把class JFrameTest7  extends JFrame 
    改成public class JFrameTest7  extends JFrame 
    就可以了
      

  2.   

    要的是两个文件也就是说
    JFrameTest6.java和JFrameTest7,java两个
    然后我用package了但是不好事啊
    你帮我看看怎么分
    如果按你说的我在JFrameTest6.java文件中怎么调用JFrameTest7.java啊
      

  3.   

    在JFrameTest6.java里要调用JFrameTest7.java的地方new一个JFrameTest7.java就可以了!
      

  4.   

    写在2个文件面,同包的话不需要import,否则要 
    要在6中使用7的组件的话,在7中为每个组件写公共的getter和setter方法,然后在6中调用得到
      

  5.   

    都做了,但是提示自己package的包有问题
    package pkg.JFrameTest7;
    public class JFrameTest6{}
    package pkg;
    public class JFrameTest7{}看上面程序
      

  6.   

    都做了,但是提示自己package的包有问题 
    import pkg.JFrameTest7; 
    public class JFrameTest6{} 
    package pkg; 
    public class JFrameTest7{} 
      

  7.   

    import java.awt.Dimension;  
    import java.awt.HeadlessException;
    import java.awt.Point;  
    import java.awt.Color;
    import java.awt.Font;
    import java.awt.BorderLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener; 
    import java.awt.event.ComponentAdapter; 
    import java.awt.event.ComponentEvent;
    import java.io.File;
    import javax.swing.*;
    import javax.imageio.*;
    import javax.imageio.stream.*;
    package p;
     public class JFrameTest6 extends JFrame implements ActionListener
    {
    // private  Timer timer;
    // private JViewport window; 
    private  JPanel view; 
    // private  File[] files;
    // private  Icon[] icons;
     JFrameTest6()
      
      {
       JButton openbutton=new JButton("OpenFile");
    openbutton.setBackground(Color.GRAY);
    openbutton.setForeground(Color.WHITE);
    openbutton.setFont(new Font("俵俽 僑僔僢僋", Font.BOLD, 22));
    openbutton.addActionListener(this);
    JPanel p=new JPanel();
    p.add(openbutton);
    getContentPane().add(p, BorderLayout.CENTER);
      
      }
    //---------------------------------------------------------------------------------------
      
      //------------------------------------------------------------------------------------
      public void actionPerformed(ActionEvent e)
      {
      
       JFileChooser filechooser = new JFileChooser();
        filechooser.setMultiSelectionEnabled(true);
        int selected = filechooser.showDialog(JFrameTest6.this,"Select Image File");

    if (selected == JFileChooser.APPROVE_OPTION)
    {   
        JFrameTest7 frame =new JFrameTest7();
    frame.setBounds(10, 10, 800, 200);
         frame.setTitle("ImageView");
         frame.setVisible(true);
     
          File[] files = filechooser.getSelectedFiles();
     
    for(int count = 0; count < files.length; count++)
    { ImageIcon[] icons = new ImageIcon[files.length];
             JLabel[] labels = new JLabel[files.length];
    icons[count]=new ImageIcon(files[count].getAbsolutePath());
    labels[count] = new JLabel(icons[count]);

    view.add(labels[count]); 

    }

    }
    }
     public static void main(String[] args)
      {
        JFrameTest6 frame = new JFrameTest6();    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setBounds(10, 10, 300, 200);
        frame.setTitle("sousennha");
    frame.setLocationRelativeTo(null);
        frame.setVisible(true);
      }
      
    }
    这个是文件6
      

  8.   

    import java.awt.Dimension;  
    import java.awt.HeadlessException;
    import java.awt.Point;  
    import java.awt.Color;
    import java.awt.Font;
    import java.awt.BorderLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener; 
    import java.awt.event.ComponentAdapter; 
    import java.awt.event.ComponentEvent;
    import java.io.File;
    import javax.swing.*;
    import javax.imageio.*;
    import javax.imageio.stream.*;
    package p;
    public class JFrameTest7  extends JFrame
      {
       private  Timer timer;
    private JViewport window; 
       private  JPanel view; 
    private  File[] files;
    private  Icon[] icons;
       JFrameTest7()
    {
      initComponents(); 
    view = new JPanel();
      window = new JViewport(); 
      window.setView(view);
      getContentPane().add(window);

    addComponentListener(new ComponentAdapter(){ 
     public void componentResized(ComponentEvent e) { 
    anchor = new Point(); 
    anchor.x = -window.getExtentSize().width; 
    timer.start(); 

    }); 

    timer = new Timer(100, new ActionListener(){ 
    public void actionPerformed(ActionEvent e){ 
    animate(); 

       }); 
    timer.setInitialDelay(0);
    }

    Point anchor; 
    private void animate() 

    Dimension extSize = window.getExtentSize(); 
    Dimension viewSize = view.getPreferredSize(); 
    anchor.x += 3;
    window.setViewPosition(anchor); 
    if (anchor.x > viewSize.width) 
         anchor.x = -extSize.width; 
    }  private void initComponents()  { 
        view = new JPanel();
    getContentPane().add(view, BorderLayout.CENTER);
    window = new JViewport(); 
    window.setView(view);
    getContentPane().add(window);




      }
    这是文件7
    两个类要求分开
    我也分开编译的但是还是有错误