mainclass.java

来自「采用java技术开发的窗口内嵌程序」· Java 代码 · 共 52 行

JAVA
52
字号
import java.awt.BorderLayout;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.event.InternalFrameAdapter;
import javax.swing.event.InternalFrameEvent;
import javax.swing.event.InternalFrameListener;

class InternalFrameIconifyListener extends InternalFrameAdapter 
{  
    public void internalFrameClosing(InternalFrameEvent  internalFrameEvent)   
    {
    	  JInternalFrame source = (JInternalFrame)internalFrameEvent.getSource();
        System.out.println ("close: " + source.getTitle());
    }   
}

public class MainClass 
{
    public static void main(final String args[]) 
    {
         JFrame frame = new JFrame();
         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

         JDesktopPane desktop = new JDesktopPane();
         JInternalFrame internalFrames[] = {
         new JInternalFrame("Can Do All", true, true, true, true),
         new JInternalFrame("Not Resizable", false, true, true, true),
         new JInternalFrame("Not Closable", true, false, true, true),
         new JInternalFrame("Not Maximizable", true, true, false, true),
         new JInternalFrame("Not Iconifiable", true, true, true, false) };

         InternalFrameListener internalFrameListener = new InternalFrameIconifyListener();

         int pos = 0;
         for (JInternalFrame internalFrame : internalFrames) 
         {
                   desktop.add(internalFrame);
                   internalFrame.setBounds(pos * 25, pos * 25, 200, 100);
                   pos++;
                   internalFrame.addInternalFrameListener(internalFrameListener);     
                   JLabel label = new JLabel(internalFrame.getTitle(), JLabel.CENTER);
                   internalFrame.add(label, BorderLayout.CENTER);
                   internalFrame.setVisible(true);
          }

          frame.add(desktop, BorderLayout.CENTER);
          frame.setSize(500, 300);
          frame.setVisible(true);
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?