⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 datasetbindingdemopanel.java

📁 java实现浏览器等本地桌面的功能
💻 JAVA
字号:
/* * DataSetBindingDemoPanel.java * * Created on April 29, 2005, 1:48 PM */package org.jdesktop.demo.binding;import javax.swing.JSlider;import org.jdesktop.binding.DataModel;import org.jdesktop.binding.TabularDataModel;import org.jdesktop.binding.swingx.AbstractBinding;import org.jdesktop.binding.swingx.BooleanBinding;import org.jdesktop.binding.swingx.ComboBoxBinding;import org.jdesktop.binding.swingx.DirectListBinding;import org.jdesktop.binding.swingx.LabelBinding;import org.jdesktop.binding.swingx.RadioBinding;import org.jdesktop.binding.swingx.TextBinding;import org.jdesktop.dataset.DataRow;import org.jdesktop.dataset.DataSet;import org.jdesktop.dataset.DataTable;import org.jdesktop.dataset.adapter.DataModelAdapter;import org.jdesktop.dataset.adapter.SelectionModelAdapter;import org.jdesktop.dataset.adapter.TabularDataModelAdapter;import org.jdesktop.demo.DemoPanel;/** * * @author  rbair */public class DataSetBindingDemoPanel extends DemoPanel {    private DataSet testDS;        /** Creates new form DataSetBindingDemoPanel */    public DataSetBindingDemoPanel() {        setName("Binding to DataSet");        initComponents();        //set up the DataSet        testDS = DataSetBindingDemoPanel.createTestDataSet();        //load the DataSet with some test data        DataSetBindingDemoPanel.loadTestDataSet(testDS);        //now to bind        TabularDataModel tdm = new TabularDataModelAdapter(testDS.getTable("Users"));        new DirectListBinding(hackerList, tdm, "name", new SelectionModelAdapter(testDS.getTable("Users").getSelector("current")));        DataModel model = new DataModelAdapter(testDS.getTable("Users").getSelector("current"));        new LabelBinding(idLBL, model, "id");        new TextBinding(nameTF, model, "name");        new RadioBinding(mfRadioGroup, model, "gender");        new BooleanBinding(developerCHK, model, "developer");        new ComboBoxBinding(langCB, model, "primary_language");        new CustomSliderBinding(skillSlider, model, "skill_level");        new TextBinding(notesTA, model, "notes");    }    public String getHtmlDescription() {        return "<html>This demo shows the results of binding various UI " +                "components to a DataSet. The DataSet schema can be viewed by " +                "clicking the 'View Schema' button</html>";    }    private static DataSet createTestDataSet() {        DataSet ds = new DataSet("Test");        DataTable table = ds.createTable("Users");        table.createColumn("id").setKeyColumn(true);        table.getColumn("id").setType(Integer.class);        table.createColumn("name");        table.createColumn("gender");        table.createColumn("developer").setType(Boolean.class);        table.createColumn("primary_language");        table.createColumn("skill_level").setType(Integer.class);        table.createColumn("notes");        return ds;    }        private static void loadTestDataSet(DataSet ds) {        DataTable users = ds.getTable("Users");        appendUser(users, 100, "John Doe", "Male", true, "English", 4, "Nice guy");        appendUser(users, 101, "Jane Doe", "Female", true, "English", 6, "Not related to John Doe, amazingly enough");        appendUser(users, 120, "Harry Hacker", "Male", true, "French", 9, "Remarkable fello!");        appendUser(users, 300, "Marlaina S. Coder", "Female", true, "German", 8, "Oh boy can she code!");    }        private static DataRow appendUser(DataTable users, int id, String name,             String gender, boolean dev, String lang, int skillz, String notes) {        DataRow user = users.appendRowNoEvent();        user.setValue("id", id);        user.setValue("name", name);        user.setValue("gender", gender);        user.setValue("developer", dev);        user.setValue("primary_language", lang);        user.setValue("skill_level", skillz);        user.setValue("notes", notes);        user.setStatus(DataRow.DataRowStatus.UNCHANGED);        return user;    }        /** This method is called from within the constructor to     * initialize the form.     * WARNING: Do NOT modify this code. The content of this method is     * always regenerated by the Form Editor.     */    // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents    private void initComponents() {        java.awt.GridBagConstraints gridBagConstraints;        jSplitPane1 = new javax.swing.JSplitPane();        jScrollPane1 = new javax.swing.JScrollPane();        hackerList = new javax.swing.JList();        jPanel1 = new javax.swing.JPanel();        jLabel1 = new javax.swing.JLabel();        nameTF = new javax.swing.JTextField();        jLabel2 = new javax.swing.JLabel();        idLBL = new javax.swing.JLabel();        jLabel4 = new javax.swing.JLabel();        jLabel5 = new javax.swing.JLabel();        developerCHK = new javax.swing.JCheckBox();        jLabel6 = new javax.swing.JLabel();        langCB = new javax.swing.JComboBox();        jLabel7 = new javax.swing.JLabel();        skillSlider = new javax.swing.JSlider();        jLabel8 = new javax.swing.JLabel();        jScrollPane3 = new javax.swing.JScrollPane();        notesTA = new javax.swing.JTextArea();        mfRadioGroup = new org.jdesktop.swingx.JXRadioGroup();        mfRadioGroup.add("Male");        mfRadioGroup.add("Female");        setLayout(new java.awt.BorderLayout());        jScrollPane1.setViewportView(hackerList);        jSplitPane1.setLeftComponent(jScrollPane1);        jPanel1.setLayout(new java.awt.GridBagLayout());        jLabel1.setText("Bound JLabel:");        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;        gridBagConstraints.insets = new java.awt.Insets(12, 12, 0, 0);        jPanel1.add(jLabel1, gridBagConstraints);        nameTF.setText("jTextField1");        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.gridx = 1;        gridBagConstraints.gridy = 1;        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;        gridBagConstraints.weightx = 1.0;        gridBagConstraints.insets = new java.awt.Insets(7, 5, 0, 11);        jPanel1.add(nameTF, gridBagConstraints);        jLabel2.setText("Bound JTextField:");        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.gridx = 0;        gridBagConstraints.gridy = 1;        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;        gridBagConstraints.insets = new java.awt.Insets(7, 12, 0, 0);        jPanel1.add(jLabel2, gridBagConstraints);        idLBL.setText("jLabel3");        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;        gridBagConstraints.weightx = 1.0;        gridBagConstraints.insets = new java.awt.Insets(12, 5, 0, 11);        jPanel1.add(idLBL, gridBagConstraints);        jLabel4.setText("Bound JXRadioGroup:");        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.gridx = 0;        gridBagConstraints.gridy = 2;        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;        gridBagConstraints.insets = new java.awt.Insets(7, 12, 0, 0);        jPanel1.add(jLabel4, gridBagConstraints);        jLabel5.setText("Bound JCheckBox:");        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.gridx = 0;        gridBagConstraints.gridy = 3;        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;        gridBagConstraints.insets = new java.awt.Insets(7, 12, 0, 0);        jPanel1.add(jLabel5, gridBagConstraints);        developerCHK.setText("Developer");        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.gridx = 1;        gridBagConstraints.gridy = 3;        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;        gridBagConstraints.weightx = 1.0;        gridBagConstraints.insets = new java.awt.Insets(7, 5, 0, 11);        jPanel1.add(developerCHK, gridBagConstraints);        jLabel6.setText("Bound JComboBox:");        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.gridx = 0;        gridBagConstraints.gridy = 4;        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;        gridBagConstraints.insets = new java.awt.Insets(7, 12, 0, 0);        jPanel1.add(jLabel6, gridBagConstraints);        langCB.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "English", "French", "German", "Spanish", "Russian" }));        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.gridx = 1;        gridBagConstraints.gridy = 4;        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;        gridBagConstraints.weightx = 1.0;        gridBagConstraints.insets = new java.awt.Insets(7, 5, 0, 11);        jPanel1.add(langCB, gridBagConstraints);        jLabel7.setText("Bound JSlider:");        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.gridx = 0;        gridBagConstraints.gridy = 5;        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;        gridBagConstraints.insets = new java.awt.Insets(7, 12, 0, 0);        jPanel1.add(jLabel7, gridBagConstraints);        skillSlider.setMajorTickSpacing(1);        skillSlider.setMaximum(10);        skillSlider.setMinorTickSpacing(1);        skillSlider.setPaintLabels(true);        skillSlider.setPaintTicks(true);        skillSlider.setSnapToTicks(true);        skillSlider.setToolTipText("Select the skill level of the developer, 1 being lowest, 10 being highest");        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.gridx = 1;        gridBagConstraints.gridy = 5;        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;        gridBagConstraints.weightx = 1.0;        gridBagConstraints.insets = new java.awt.Insets(7, 5, 0, 11);        jPanel1.add(skillSlider, gridBagConstraints);        jLabel8.setText("Bound JEditorPane:");        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.gridx = 0;        gridBagConstraints.gridy = 6;        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;        gridBagConstraints.insets = new java.awt.Insets(7, 12, 0, 0);        jPanel1.add(jLabel8, gridBagConstraints);        jScrollPane3.setViewportView(notesTA);        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.gridx = 1;        gridBagConstraints.gridy = 6;        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;        gridBagConstraints.weightx = 1.0;        gridBagConstraints.weighty = 1.0;        gridBagConstraints.insets = new java.awt.Insets(7, 5, 11, 11);        jPanel1.add(jScrollPane3, gridBagConstraints);        gridBagConstraints = new java.awt.GridBagConstraints();        gridBagConstraints.gridx = 1;        gridBagConstraints.gridy = 2;        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;        gridBagConstraints.weightx = 1.0;        gridBagConstraints.insets = new java.awt.Insets(7, 5, 0, 11);        jPanel1.add(mfRadioGroup, gridBagConstraints);        jSplitPane1.setRightComponent(jPanel1);        add(jSplitPane1, java.awt.BorderLayout.CENTER);    }    // </editor-fold>//GEN-END:initComponents            // Variables declaration - do not modify//GEN-BEGIN:variables    private javax.swing.JCheckBox developerCHK;    private javax.swing.JList hackerList;    private javax.swing.JLabel idLBL;    private javax.swing.JLabel jLabel1;    private javax.swing.JLabel jLabel2;    private javax.swing.JLabel jLabel4;    private javax.swing.JLabel jLabel5;    private javax.swing.JLabel jLabel6;    private javax.swing.JLabel jLabel7;    private javax.swing.JLabel jLabel8;    private javax.swing.JPanel jPanel1;    private javax.swing.JScrollPane jScrollPane1;    private javax.swing.JScrollPane jScrollPane3;    private javax.swing.JSplitPane jSplitPane1;    private javax.swing.JComboBox langCB;    private org.jdesktop.swingx.JXRadioGroup mfRadioGroup;    private javax.swing.JTextField nameTF;    private javax.swing.JTextArea notesTA;    private javax.swing.JSlider skillSlider;    // End of variables declaration//GEN-END:variables        public static final class CustomSliderBinding extends AbstractBinding {        private JSlider slider;                        public CustomSliderBinding(JSlider slider, DataModel model, String fieldName) {            super(slider, model, fieldName, AbstractBinding.AUTO_VALIDATE_NONE);        }                protected void setComponent(javax.swing.JComponent component) {            assert component instanceof JSlider;            slider = (JSlider)component;        }        protected void setComponentValue(Object value) {            if (value instanceof Number) {                slider.setValue(((Number)value).intValue());            }        }        protected Object getComponentValue() {            return slider.getValue();        }        public javax.swing.JComponent getComponent() {            return slider;        }            }}

⌨️ 快捷键说明

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