题
jmenu的行为正常,直到使用jbutton在Jframe上更新JTable为止。然后,jmenu主要被jpanel隐藏(请参见下图)。选择JMENU时不应该始终处于最高状态吗?为什么将其推到后面?更新jbuttonDactionPerformed上表的代码是。
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);
}
...
预期的
破碎的
解决方案
可能是因为当您应该使用jpanel时,您正在使用帆布。帆布是一个AWT组件,并在秋千组件的顶部绘制。不要在摆动应用程序中使用AWT组件。
编辑:
如果您确实需要使用AWT组件,则需要当前发布JDK。 查看混合和浅色组件.
其他提示
我建议阅读 混合重量级和轻量级组件 了解更多信息。
不隶属于 StackOverflow