代码之家  ›  专栏  ›  技术社区  ›  jacknad

为什么JMenu不总是在上面?

  •  1
  • jacknad  · 技术社区  · 15 年前

    JMenu的行为正常,直到JButton用于更新JFrame上的JTable。 然后JMenu主要被JPanel隐藏(见下图)。 更新jButtonAddActionPerformed上的表的代码是。

    public class MyClass extends javax.swing.JFrame {
        private void jButtonAddActionPerformed(java.awt.event.ActionEvent evt) {
            DefaultTableModel model = (DefaultTableModel) jTable.getModel();
            model.addRow(new Object[]{"", DEFAULT_ON, DEFAULT_OFF});
            int lastRow = jTable.getRowCount() - 1;
            jTable.setValueAt(lastRow + 1, lastRow, 0);
        }                                                  
    ...
    

    预期

    alt text

    破碎的

    alt text

    2 回复  |  直到 15 年前
        1
  •  4
  •   camickr    15 年前
        2
  •  2
  •   Ishtar    15 年前

    我建议你读书 Mixing Heavyweight and Lightweight Components 更多信息。