fontsdialog.java
来自「优秀的打印控件全源代码,类似水晶表的设计器!」· Java 代码 · 共 382 行 · 第 1/2 页
JAVA
382 行
getContentPane().add(jPanelParameters, java.awt.BorderLayout.CENTER); pack(); }//GEN-END:initComponents private void jButtonDeleteParameterActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonDeleteParameterActionPerformed jTableParameters.getSelectedRows(); while (this.jTableParameters.getSelectedRow() >= 0) { int row = this.jTableParameters.getSelectedRow(); IReportFont font = (IReportFont)jTableParameters.getValueAt(row, 0); // Adjust all elements that refer to this font... Enumeration e = this.getJReportFrame().getReport().getElements().elements(); while (e.hasMoreElements()) { ReportElement re = (ReportElement)e.nextElement(); if (re instanceof TextReportElement && ((TextReportElement)re).getReportFont().equals(font.getReportFont()) ) ((TextReportElement)re).setReportFont(""); } this.getJReportFrame().getReport().getFonts().remove( font ); this.jTableParameters.removeRowSelectionInterval(row, row); } updateReportFonts(); ((MainFrame)this.getParent()).getElementPropertiesDialog().updateReportFonts(); ((MainFrame)this.getParent()).getElementPropertiesDialog().updateSelection(); }//GEN-LAST:event_jButtonDeleteParameterActionPerformed private void jButtonModifyParameterActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonModifyParameterActionPerformed JRFontDialog fd = new JRFontDialog(null, true); fd.updateFonts( this.getJReportFrame().getMainFrame().getTtfFonts()); DefaultTableModel dtm = (DefaultTableModel)jTableParameters.getModel(); IReportFont font = (IReportFont)dtm.getValueAt(jTableParameters.getSelectedRow(), 0); fd.setIReportFont(font ); fd.show(); if (fd.getDialogResult() == JOptionPane.OK_OPTION) { IReportFont new_font = fd.getIReportFont(); // If change the report font name, we must change all references... String oldName = font.getReportFont(); font.setReportFont( new_font.getReportFont() ); if ( !it.businesslogic.ireport.util.Misc.nvl(oldName,"").equals( it.businesslogic.ireport.util.Misc.nvl(new_font.getReportFont(),"") ) && new_font.getReportFont() != null ) { // This modification can occur only in textElements.... Enumeration e = this.getJReportFrame().getReport().getElements().elements(); while (e.hasMoreElements()) { ReportElement re = (ReportElement)e.nextElement(); if (re instanceof TextReportElement && ((TextReportElement)re).getReportFont().equals(oldName)) ((TextReportElement)re).setReportFont( new_font.getReportFont() ); } } font.setFontName( new_font.getFontName()); font.setFontSize( new_font.getFontSize()); font.setBold( new_font.isBold()); font.setItalic(new_font.isItalic()); font.setPDFFontName( new_font.getPDFFontName()); font.setPdfEmbedded( new_font.isPdfEmbedded()); font.setPdfEncoding( new_font.getPdfEncoding() ); font.setStrikeTrought( new_font.isStrikeTrought() ); font.setUnderline( new_font.isUnderline() ); //font.setTTFFont( new_font.getTTFFont() ); // Update the table row.... jTableParameters.setValueAt( font, jTableParameters.getSelectedRow(), 0); jTableParameters.setValueAt( font.getDescription(), jTableParameters.getSelectedRow(), 1); jTableParameters.setValueAt( font.isDefaultFont()+"", jTableParameters.getSelectedRow(), 2); jTableParameters.updateUI(); ((MainFrame)this.getParent()).getElementPropertiesDialog().updateReportFonts(); ((MainFrame)this.getParent()).getElementPropertiesDialog().updateSelection(); this.getJReportFrame().setIsDocDirty(true); this.getJReportFrame().repaint(); } }//GEN-LAST:event_jButtonModifyParameterActionPerformed private void jButtonNewParameterActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonNewParameterActionPerformed JRFontDialog fd = new JRFontDialog(null, true); fd.updateFonts( this.getJReportFrame().getMainFrame().getTtfFonts()); fd.show(); if (fd.getDialogResult() == JOptionPane.OK_OPTION) { IReportFont font = fd.getIReportFont(); DefaultTableModel dtm = (DefaultTableModel)jTableParameters.getModel(); dtm.addRow( new Object[] {font, font.getDescription(),font.isDefaultFont()+"" }); // this.getJReportFrame().getReport().getFonts().addElement(font); /** * update text elements and properties frame.... */ this.getJReportFrame().getMainFrame().getElementPropertiesDialog().updateReportFonts(); } }//GEN-LAST:event_jButtonNewParameterActionPerformed /** Closes the dialog */ private void closeDialog(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_closeDialog setVisible(false); }//GEN-LAST:event_closeDialog /** * @param args the command line arguments */ public static void main(String args[]) { new ValuesDialog(new javax.swing.JFrame(), true).show(); } // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton jButtonDeleteParameter; private javax.swing.JButton jButtonModifyParameter; private javax.swing.JButton jButtonNewParameter; private javax.swing.JPanel jPanelButtons; private javax.swing.JPanel jPanelParameters; private javax.swing.JScrollPane jScrollPane1; private javax.swing.JTable jTableParameters; // End of variables declaration//GEN-END:variables private JReportFrame jReportFrame; /** Getter for property jReportFrame. * @return Value of property jReportFrame. * */ public it.businesslogic.ireport.gui.JReportFrame getJReportFrame() { return jReportFrame; } /** Setter for property jReportFrame. * @param jReportFrame New value of property jReportFrame. * */ public void setJReportFrame(it.businesslogic.ireport.gui.JReportFrame jReportFrame) { this.jReportFrame = jReportFrame; if (jReportFrame == null) { setVisible(false); return; } this.setTitle(jReportFrame.getReport().getName()+" fonts..."); if (isVisible()) { updateReportFonts(); } } public void updateReportFonts() { DefaultTableModel dtm = (DefaultTableModel)jTableParameters.getModel(); dtm.setRowCount(0); if (jReportFrame != null) { Enumeration e =jReportFrame.getReport().getFonts().elements(); while (e.hasMoreElements()) { IReportFont font = (IReportFont)e.nextElement(); dtm.addRow( new Object[] {font, font.getDescription(), font.isDefaultFont()+"" }); } } } public void setVisible(boolean visible) { if (visible == isVisible()) return; super.setVisible(visible); if (visible == true) { this.setJReportFrame(jReportFrame); } }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?