@Override public Component getTableCellRendererComponent( JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { textLabel.setFont(table.getFont()); textLabel.setText(Objects.toString(value, "")); textLabel.setBorder(hasFocus ? focusCellHighlightBorder : noFocusBorder); FontMetrics fm = table.getFontMetrics(table.getFont()); Insets i = textLabel.getInsets(); int swidth = iconLabel.getPreferredSize().width + fm.stringWidth(textLabel.getText()) + i.left + i.right; int cwidth = table.getColumnModel().getColumn(column).getWidth(); dim.width = swidth > cwidth ? cwidth : swidth; if (isSelected) { textLabel.setOpaque(true); textLabel.setForeground(table.getSelectionForeground()); textLabel.setBackground(table.getSelectionBackground()); iconLabel.setIcon(sicon); } else { textLabel.setOpaque(false); textLabel.setForeground(table.getForeground()); textLabel.setBackground(table.getBackground()); iconLabel.setIcon(nicon); } return panel; }
@SuppressWarnings("serial") private void initGUI() { try { setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); getContentPane().setLayout(null); this.setTitle("Overzicht"); this.setVisible(true); { lStart = new JLabel(); getContentPane().add(lStart); lStart.setText("Overzicht"); lStart.setHorizontalAlignment(SwingConstants.CENTER); lStart.setBackground(new java.awt.Color(54, 190, 54)); lStart.setFont(new java.awt.Font("Arial", 1, 36)); lStart.setForeground(new java.awt.Color(0, 128, 64)); lStart.setOpaque(true); lStart.setBounds(0, 0, 336, 49); } { pInzet = new JPanel(); getContentPane().add(pInzet); pInzet.setBorder( BorderFactory.createTitledBorder( null, "Selectie", TitledBorder.LEADING, TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 11))); pInzet.setLayout(null); pInzet.setBounds(14, 63, 308, 105); pInzet.setFont(new java.awt.Font("Tahoma", 1, 12)); { lMin = new JLabel(); pInzet.add(lMin); lMin.setText("Speler"); lMin.setFont(new java.awt.Font("Arial", 0, 12)); lMin.setBounds(17, 59, 62, 27); } { lMax = new JLabel(); pInzet.add(lMax); lMax.setText("Spelronde"); lMax.setFont(new java.awt.Font("Arial", 0, 12)); lMax.setBounds(17, 26, 62, 25); } // Combo voor Spelrondes. Deze wordt eerst geladen. Na selectie // wordt de speler gevuld. { oc = new OverzichtController(this); String[] rondes = oc.GeefSpelrondes(); ComboBoxModel cbSpelRondeModel = new DefaultComboBoxModel(rondes); cbSpelRonde = new JComboBox(); pInzet.add(cbSpelRonde); cbSpelRonde.setModel(cbSpelRondeModel); cbSpelRonde.setBounds(91, 29, 156, 21); cbSpelRonde.setToolTipText("Maak een keuze uit de gespeelde speelronden."); } { bStart = new JButton(); getContentPane().add(bStart); bStart.setText("Sluiten"); bStart.setFont(new java.awt.Font("Arial", 0, 12)); bStart.setBounds(196, 303, 75, 23); bStart.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent evt) { bStartActionPerformed(evt); } }); } } pack(); this.setSize(352, 364); } catch (Exception e) { e.printStackTrace(); } } // private void initGUI()