JXPanelTranslucencyDemoPanel.java
上传用户:zhengdagz
上传日期:2014-03-06
资源大小:1956k
文件大小:6k
源码类别:

xml/soap/webservice

开发平台:

Java

  1. /*
  2.  * JXPanelTranslucencyDemoPanel.java
  3.  *
  4.  * Created on April 12, 2005, 9:37 AM
  5.  */
  6. package org.jdesktop.demo.swingx;
  7. import java.util.Hashtable;
  8. import javax.swing.ImageIcon;
  9. import javax.swing.JLabel;
  10. import javax.swing.SwingUtilities;
  11. import org.jdesktop.demo.DemoPanel;
  12. /**
  13.  * Demonstrates translucency on a JXPanel.
  14.  * @author  rbair
  15.  */
  16. public class JXPanelTranslucencyDemoPanel extends DemoPanel {
  17.     
  18.     /**
  19.      * Creates new form JXPanelTranslucencyDemoPanel 
  20.      */
  21.     public JXPanelTranslucencyDemoPanel() {
  22.         setName("JXPanel Translucency Demo");
  23.         initComponents();
  24.         setIcon(new ImageIcon(getClass().getResource("/org/jdesktop/demo/swingx/resources/logo.gif")));
  25.     }
  26.     public String getHtmlDescription() {
  27.         return "<html><p><h2><b>Translucency</b></h2>"/*<img src="" + getClass().getResource("resources/accueil.png") + "">"*/ +
  28.                 "Demonstrates the ability to make a JXPanel transparent/translucent. All GUI components" +
  29.                 "are made translucent along with the panel, without having to change the alpha for individual " +
  30.                 "components.</p>" +
  31.                 "<p><h2><b>Try This:</b></h2>" +
  32.                 "Slide the <i>alpha</i>; slider to change alpha setting for the JXPanel, " +
  33.                 "which controls panel's translucency. In the demo, the alpha " +
  34.                 "defaults to 100, which is fully opaque. Note how the panel transitions smoothly, and " +
  35.                 "in real-time, between translucent and opaque.</p></html>";
  36.     }
  37.     public String getName() {
  38.         return "Translucency";
  39.     }
  40.     /** This method is called from within the constructor to
  41.      * initialize the form.
  42.      * WARNING: Do NOT modify this code. The content of this method is
  43.      * always regenerated by the Form Editor.
  44.      */
  45.     // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
  46.     private void initComponents() {
  47.         java.awt.GridBagConstraints gridBagConstraints;
  48.         buttonGroup1 = new javax.swing.ButtonGroup();
  49.         jLabel3 = new javax.swing.JLabel();
  50.         alphaSlider = new javax.swing.JSlider();
  51.         Hashtable labels = new Hashtable();
  52.         labels.put(0, new JLabel("Trans."));
  53.         labels.put(100, new JLabel("Opaque"));
  54.         alphaSlider.setLabelTable(labels);
  55.         jXPanel1 = new org.jdesktop.swingx.JXPanel();
  56.         jSplitPane1 = new javax.swing.JSplitPane();
  57.         setLayout(new java.awt.GridBagLayout());
  58.         setBackground(javax.swing.UIManager.getDefaults().getColor("ScrollBar.thumb"));
  59.         jLabel3.setFont(new java.awt.Font("Microsoft Sans Serif", 1, 11));
  60.         jLabel3.setText("Alpha (translucency)");
  61.         gridBagConstraints = new java.awt.GridBagConstraints();
  62.         gridBagConstraints.gridx = 0;
  63.         gridBagConstraints.gridy = 1;
  64.         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
  65.         gridBagConstraints.insets = new java.awt.Insets(7, 12, 0, 11);
  66.         add(jLabel3, gridBagConstraints);
  67.         alphaSlider.setBackground(new java.awt.Color(153, 153, 255));
  68.         alphaSlider.setPaintLabels(true);
  69.         alphaSlider.setValue(100);
  70.         alphaSlider.setOpaque(false);
  71.         alphaSlider.addChangeListener(new javax.swing.event.ChangeListener() {
  72.             public void stateChanged(javax.swing.event.ChangeEvent evt) {
  73.                 alphaSliderStateChanged(evt);
  74.             }
  75.         });
  76.         gridBagConstraints = new java.awt.GridBagConstraints();
  77.         gridBagConstraints.gridx = 0;
  78.         gridBagConstraints.gridy = 2;
  79.         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
  80.         gridBagConstraints.weightx = 1.0;
  81.         gridBagConstraints.insets = new java.awt.Insets(5, 12, 11, 11);
  82.         add(alphaSlider, gridBagConstraints);
  83.         jXPanel1.setLayout(new java.awt.GridBagLayout());
  84.         jXPanel1.setOpaque(false);
  85.         jSplitPane1.setBorder(null);
  86.         jSplitPane1.setDividerLocation(100);
  87.         gridBagConstraints = new java.awt.GridBagConstraints();
  88.         gridBagConstraints.gridx = 0;
  89.         gridBagConstraints.gridy = 0;
  90.         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
  91.         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
  92.         gridBagConstraints.weightx = 1.0;
  93.         gridBagConstraints.weighty = 1.0;
  94.         jXPanel1.add(jSplitPane1, gridBagConstraints);
  95.         gridBagConstraints = new java.awt.GridBagConstraints();
  96.         gridBagConstraints.gridx = 0;
  97.         gridBagConstraints.gridy = 0;
  98.         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
  99.         gridBagConstraints.weightx = 1.0;
  100.         gridBagConstraints.weighty = 1.0;
  101.         gridBagConstraints.insets = new java.awt.Insets(12, 12, 11, 11);
  102.         add(jXPanel1, gridBagConstraints);
  103.     }
  104.     // </editor-fold>//GEN-END:initComponents
  105. //GEN-FIRST:event_jLayeredPane1ComponentResized
  106.     private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-LAST:event_jLayeredPane1ComponentResized
  107. // TODO add your handling code here://GEN-FIRST:event_jTextField1ActionPerformed
  108.     }//GEN-LAST:event_jTextField1ActionPerformed
  109.     private void alphaSliderStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_alphaSliderStateChanged
  110.         // The use of invoke later is not strictly necessary, except that changing
  111.         // the alpha on an older PIII laptop resulted in a slightly jerky slider
  112.         // control, as it was dragged. Pushing this to a separate thread helps smooth
  113.         // that out.       
  114.         SwingUtilities.invokeLater( new Runnable() { 
  115.             public void run() {
  116.                 jXPanel1.setAlpha((float)((float)alphaSlider.getValue()/(float)100));
  117.             }
  118.         });
  119.     }//GEN-LAST:event_alphaSliderStateChanged
  120.     
  121.     
  122.     // Variables declaration - do not modify//GEN-BEGIN:variables
  123.     private javax.swing.JSlider alphaSlider;
  124.     private javax.swing.ButtonGroup buttonGroup1;
  125.     private javax.swing.JLabel jLabel3;
  126.     private javax.swing.JSplitPane jSplitPane1;
  127.     private org.jdesktop.swingx.JXPanel jXPanel1;
  128.     // End of variables declaration//GEN-END:variables
  129.     
  130. }