Java by API/javax.swing/JLayeredPane

Материал из Java эксперт
Перейти к: навигация, поиск

JLayeredPane: add(Component comp, Object constraints)

   <source lang="java">

import java.awt.Color; import javax.swing.JButton; import javax.swing.JFrame; public class Main extends JFrame {

 public Main() {
   super("");
   setSize(570, 400);
   getContentPane().setBackground(new Color(244, 232, 152));
   getLayeredPane().setOpaque(true);
   JButton[] frames = new JButton[5];
   for (int i = 0; i < 5; i++) {
     frames[i] = new JButton("InnerFrame " + i);
     frames[i].setBounds(50 + i * 20, 50 + i * 20, 200, 200);
     getLayeredPane().add(frames[i]);
   }
   super.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   setVisible(true);
 }
 public static void main(String[] args) {
   new Main();
 }

}

 </source>
   
  
 
  



JLayeredPane.DEFAULT_LAYER

   <source lang="java">

import java.awt.BorderLayout; import javax.swing.JDesktopPane; import javax.swing.JFrame; import javax.swing.JInternalFrame; import javax.swing.JLabel; import javax.swing.JLayeredPane; public class MainClass {

 public static void main(String args[]) {
   JFrame f = new JFrame("Sample");
   f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   JLayeredPane desktop = new JDesktopPane();
   desktop.setOpaque(false);
   desktop.add(new SelfInternalFrame("1"), JLayeredPane.POPUP_LAYER);
   desktop.add(new SelfInternalFrame("2"), JLayeredPane.DEFAULT_LAYER);
   desktop.add(new SelfInternalFrame("3"), JLayeredPane.PALETTE_LAYER);    
   
   f.add(desktop, BorderLayout.CENTER);
   f.setSize(300, 200);
   f.setVisible(true);
 }

} class SelfInternalFrame extends JInternalFrame {

 public SelfInternalFrame(String s) {
   getContentPane().add(new JLabel(s), BorderLayout.CENTER);
   setBounds(50, 50, 100, 100);
   setResizable(true);
   setClosable(true);
   setMaximizable(true);
   setIconifiable(true);
   setTitle(s);
   setVisible(true);
 }

}


 </source>
   
  
 
  



JLayeredPane: getAccessibleContext()

   <source lang="java">

import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.accessibility.AccessibleContext; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; public class MainClass extends JFrame implements ActionListener {

 JButton jb;
 MainClass(String title) {
   super(title);
   setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   AccessibleContext ac = getAccessibleContext();
   ac.setAccessibleDescription("Accessibility Demo1 description.");
   ac = getRootPane().getAccessibleContext();
   ac.setAccessibleName("Root pane");
   ac.setAccessibleDescription("Root pane description");
   ac = getGlassPane().getAccessibleContext();
   ac.setAccessibleName("Glass pane");
   ac.setAccessibleDescription("Glass pane description");
   ac = getLayeredPane().getAccessibleContext();
   ac.setAccessibleName("Layered pane");
   ac.setAccessibleDescription("Layered pane description");
   ac = getContentPane().getAccessibleContext();
   ac.setAccessibleName("Content pane");
   ac.setAccessibleDescription("Content pane description");
   JPanel p = new JPanel();
   ac = p.getAccessibleContext();
   ac.setAccessibleName("Panel");
   ac.setAccessibleDescription("Panel description");
   jb = new JButton("Press Me");
   jb.addActionListener(this);
   jb.setToolTipText("Press me for accessibility information.");
   p.add(jb);
   getContentPane().add(p);
   setSize(200, 75);
   setVisible(true);
 }
 public void actionPerformed(ActionEvent e) {
   dumpInfo(getAccessibleContext());
 }
 void dumpInfo(AccessibleContext ac) {
   System.out.println("Name = " + ac.getAccessibleName());
   System.out.println("Description = " + ac.getAccessibleDescription());
   int nChildren = ac.getAccessibleChildrenCount();
   for (int i = 0; i < nChildren; i++)
     dumpInfo(ac.getAccessibleChild(i).getAccessibleContext());
 }
 public static void main(String[] args) {
   new MainClass("Accessibility Demo1");
 }

}


 </source>
   
  
 
  



JLayeredPane.PALETTE_LAYER

   <source lang="java">

import java.awt.BorderLayout; import javax.swing.JDesktopPane; import javax.swing.JFrame; import javax.swing.JInternalFrame; import javax.swing.JLabel; import javax.swing.JLayeredPane; public class MainClass {

 public static void main(String args[]) {
   JFrame f = new JFrame("Sample");
   f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   JLayeredPane desktop = new JDesktopPane();
   desktop.setOpaque(false);
   desktop.add(new SelfInternalFrame("1"), JLayeredPane.POPUP_LAYER);
   desktop.add(new SelfInternalFrame("2"), JLayeredPane.DEFAULT_LAYER);
   desktop.add(new SelfInternalFrame("3"), JLayeredPane.PALETTE_LAYER);    
   
   f.add(desktop, BorderLayout.CENTER);
   f.setSize(300, 200);
   f.setVisible(true);
 }

} class SelfInternalFrame extends JInternalFrame {

 public SelfInternalFrame(String s) {
   getContentPane().add(new JLabel(s), BorderLayout.CENTER);
   setBounds(50, 50, 100, 100);
   setResizable(true);
   setClosable(true);
   setMaximizable(true);
   setIconifiable(true);
   setTitle(s);
   setVisible(true);
 }

}


 </source>
   
  
 
  



JLayeredPane.POPUP_LAYER

   <source lang="java">

import java.awt.BorderLayout; import javax.swing.JDesktopPane; import javax.swing.JFrame; import javax.swing.JInternalFrame; import javax.swing.JLabel; import javax.swing.JLayeredPane; public class MainClass {

 public static void main(String args[]) {
   JFrame f = new JFrame("Sample");
   f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   JLayeredPane desktop = new JDesktopPane();
   desktop.setOpaque(false);
   desktop.add(new SelfInternalFrame("1"), JLayeredPane.POPUP_LAYER);
   f.add(desktop, BorderLayout.CENTER);
   f.setSize(300, 200);
   f.setVisible(true);
 }

} class SelfInternalFrame extends JInternalFrame {

 public SelfInternalFrame(String s) {
   getContentPane().add(new JLabel(s), BorderLayout.CENTER);
   setBounds(50, 50, 100, 100);
   setResizable(true);
   setClosable(true);
   setMaximizable(true);
   setIconifiable(true);
   setTitle(s);
   setVisible(true);
 }

}


 </source>