📄 fieldpatterndialog.java
字号:
updateListNegatives(); }//GEN-LAST:event_jCheckBox1ActionPerformed private void jListCategoryValueChanged(javax.swing.event.ListSelectionEvent evt) {//GEN-FIRST:event_jListCategoryValueChanged int i = jListCategory.getSelectedIndex(); if (i != selectedCategory) { selectedCategory = i; jPanelSheets.removeAll(); if (i == 0) { jPanelSheets.add(jPanelNumber); updateSample(); } else if (i == 1) { jPanelSheets.add(jPanelDate); updateSample(); } else if (i == 2) { jPanelSheets.add(jPanelTime); updateSample(); } else if (i == 3) { jPanelSheets.add(jPanelCurrency); updateSample(); } else if (i == 4) { jPanelSheets.add(jPanelPercentage); updateSample(); } else if (i == 5) { jPanelSheets.add(jPanelScientific); updateSample(); } else { updateSample(); } jPanelSheets.updateUI(); } System.out.println("Selected entry " + i); }//GEN-LAST:event_jListCategoryValueChanged private void jSpinnerNumberDecimalsPropertyChange(java.beans.PropertyChangeEvent evt) {//GEN-FIRST:event_jSpinnerNumberDecimalsPropertyChange }//GEN-LAST:event_jSpinnerNumberDecimalsPropertyChange /** * @param args the command line arguments */ public static void main(String args[]) { new FieldPatternDialog(new javax.swing.JFrame(), true).show(); } // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton jButton1; private javax.swing.JButton jButton2; private javax.swing.JCheckBox jCheckBox1; private javax.swing.JComboBox jComboBoxPercentage; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel10; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; 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.JLabel jLabel9; private javax.swing.JLabel jLabelPattern; private javax.swing.JLabel jLabelSample; private javax.swing.JList jListCategory; private javax.swing.JList jListDateTypes; private javax.swing.JList jListNegatives; private javax.swing.JList jListTimeTypes; private javax.swing.JPanel jPanel1; private javax.swing.JPanel jPanel10; private javax.swing.JPanel jPanel2; private javax.swing.JPanel jPanel3; private javax.swing.JPanel jPanel4; private javax.swing.JPanel jPanel5; private javax.swing.JPanel jPanel6; private javax.swing.JPanel jPanel7; private javax.swing.JPanel jPanel8; private javax.swing.JPanel jPanel9; private javax.swing.JPanel jPanelCurrency; private javax.swing.JPanel jPanelDate; private javax.swing.JPanel jPanelNumber; private javax.swing.JPanel jPanelPercentage; private javax.swing.JPanel jPanelScientific; private javax.swing.JPanel jPanelSheets; private javax.swing.JPanel jPanelTime; private javax.swing.JScrollPane jScrollPane1; private javax.swing.JScrollPane jScrollPane2; private javax.swing.JScrollPane jScrollPane3; private javax.swing.JScrollPane jScrollPane4; private javax.swing.JSeparator jSeparator1; private javax.swing.JSpinner jSpinnerNumberDecimals; private javax.swing.JSpinner jSpinnerNumberDecimals1; private javax.swing.JSpinner jSpinnerNumberDecimals2; private javax.swing.JSpinner jSpinnerNumberDecimals3; // End of variables declaration//GEN-END:variables private void updateSample() { String format = createPattern(); if (jListCategory.getSelectedIndex() == 0) { java.text.DecimalFormat nf = new java.text.DecimalFormat(format); jLabelSample.setText( nf.format(1234.43210)); } else if (jListCategory.getSelectedIndex() == 1) { if (jListDateTypes.getSelectedIndex() >= 0) { jLabelSample.setText( ""+jListDateTypes.getSelectedValue() ); } else jLabelSample.setText(""); } else if (jListCategory.getSelectedIndex() == 2) { if (jListTimeTypes.getSelectedIndex() >= 0) { jLabelSample.setText( ""+jListTimeTypes.getSelectedValue() ); } else jLabelSample.setText(""); } else if (jListCategory.getSelectedIndex() == 3) { java.text.DecimalFormat nf = new java.text.DecimalFormat(format); jLabelSample.setText( nf.format(1234.43210)); } else if (jListCategory.getSelectedIndex() == 4) { java.text.DecimalFormat nf = new java.text.DecimalFormat(format); jLabelSample.setText( nf.format(1234.43210)); } else if (jListCategory.getSelectedIndex() == 5) { java.text.DecimalFormat nf = new java.text.DecimalFormat(format); jLabelSample.setText( nf.format(1234.43210)); } else { jLabelSample.setText(""); } } private String createPattern() { String format = ""; // NUMBER FORMATS if (jListCategory.getSelectedIndex() == 0) { //format = "###0"; if (jCheckBox1.isSelected()) { format = "#,##0"; } else { format = "###0"; } int decimals = ((javax.swing.SpinnerNumberModel)jSpinnerNumberDecimals.getModel()).getNumber().intValue(); if (decimals > 0) { format += "."; for (int i=0; i<decimals; ++i) { format += "0"; } } if (jListNegatives.getSelectedIndex() >= 0) { int selectedIndex = jListNegatives.getSelectedIndex(); if (selectedIndex == 0) format += ";-"+ format + ""; if (selectedIndex == 1) format += ";" + format + "-"; if (selectedIndex == 2) format += ";(" + format + ")"; if (selectedIndex == 3) format += ";(-" + format + ")"; if (selectedIndex == 4) format += ";(" + format + "-)"; } } else if (jListCategory.getSelectedIndex() == 1) { if (jListDateTypes.getSelectedIndex() >= 0) { format = dateFormats[jListDateTypes.getSelectedIndex()]; } } else if (jListCategory.getSelectedIndex() == 2) { if (jListTimeTypes.getSelectedIndex() >= 0) { format = timeFormats[jListTimeTypes.getSelectedIndex()]; } } else if (jListCategory.getSelectedIndex() == 3) { format = "\u00A4 #,##0"; int decimals = ((javax.swing.SpinnerNumberModel)jSpinnerNumberDecimals1.getModel()).getNumber().intValue(); if (decimals > 0) { format += "."; for (int i=0; i<decimals; ++i) { format += "0"; } } } else if (jListCategory.getSelectedIndex() == 4) { format = "#,##0"; int decimals = ((javax.swing.SpinnerNumberModel)jSpinnerNumberDecimals2.getModel()).getNumber().intValue(); if (decimals > 0) { format += "."; for (int i=0; i<decimals; ++i) { format += "0"; } } format += " " + jComboBoxPercentage.getSelectedItem(); } else if (jListCategory.getSelectedIndex() == 5) { format = "0"; int decimals = ((javax.swing.SpinnerNumberModel)jSpinnerNumberDecimals3.getModel()).getNumber().intValue(); if (decimals > 0) { format += ".0"; for (int i=1; i<decimals; ++i) { format += "#"; } } format += "E0"; } jLabelPattern.setText( format ); return format; } private void updateListNegatives() { String format = createPattern(); javax.swing.DefaultListModel dlm = (javax.swing.DefaultListModel)jListNegatives.getModel(); int selected = jListNegatives.getSelectedIndex(); dlm.removeAllElements(); if (format.indexOf(";") >= 0) { format = format.substring(0,format.indexOf(";")); } String[] formats = new String[5]; formats[0] = format + ";-"+ format + ""; formats[1] = format + ";" + format + "-"; formats[2] = format + ";(" + format + ")"; formats[3] = format + ";(-" + format + ")"; formats[4] = format + ";(" + format + "-)"; for (int i=0; i<formats.length; ++i) { java.text.DecimalFormat nf = new java.text.DecimalFormat(formats[i]); dlm.addElement( nf.format(-1234.43210) ); } if (selected>=0) { jListNegatives.setSelectedIndex(selected); } } private void updateListDateTypes() { javax.swing.DefaultListModel dlm = (javax.swing.DefaultListModel)jListDateTypes.getModel(); for (int i=0; i<dateFormats.length; ++i) { java.text.SimpleDateFormat nf = new java.text.SimpleDateFormat(dateFormats[i]); dlm.addElement( nf.format(new java.util.Date()) ); } jListDateTypes.setSelectedIndex(0); } private void updateListTimeTypes() { javax.swing.DefaultListModel dlm = (javax.swing.DefaultListModel)jListTimeTypes.getModel(); for (int i=0; i<timeFormats.length; ++i) { java.text.SimpleDateFormat nf = new java.text.SimpleDateFormat(timeFormats[i]); dlm.addElement( nf.format(new java.util.Date()) ); } jListTimeTypes.setSelectedIndex(0); } /** * Getter for property dialogResult. * @return Value of property dialogResult. */ public int getDialogResult() { return dialogResult; } /** * Setter for property dialogResult. * @param dialogResult New value of property dialogResult. */ public void setDialogResult(int dialogResult) { this.dialogResult = dialogResult; } /** * Getter for property pattern. * @return Value of property pattern. */ public java.lang.String getPattern() { return pattern; } /** * Setter for property pattern. * @param pattern New value of property pattern. */ public void setPattern(java.lang.String pattern) { this.pattern = pattern; } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -