0

我正在使用 Matisse、NetBeans GUI Builder 开发一个简单的 Swing 应用程序。我的所有窗户都面临同样的问题。当我在我的主 JFrame 或其他 JDialog 上打开一个新的 JDialog 时,当我单击后台窗口中的某个位置时,我失去了在前台 JDialog 中用鼠标选择字段的能力。

在此处输入图像描述

在所附图像中,背景窗口是一个 JFrame,我使用以下命令构建前景 JDialog: new JDialog(this, true);

你能帮我解决这个问题吗?作为提示,如果在失去鼠标功能后我使用 tab 键前进到“组合框滚动”或日历字段,然后点击空格键,我再次获得鼠标点击,一切都像开始一样完美。

这是代码:

public class PrincipalUI extends javax.swing.JFrame {

private void jMenuItemUserManagementActionPerformed(java.awt.event.ActionEvent evt) {                                                        
        userManagementUI = new UserManagementUI(this, true);
        userManagementUI.setVisible(true);
    } 
}

public class UserManagementUI extends javax.swing.JDialog {
/**
     * Creates new form UserManagement
     */
    public UserManagementUI(Frame owner, boolean modal) {
        super(owner, modal);
        initOperations();
        initComponents();
        initPostOperations();
    }

}
4

2 回答 2

1

看起来对话框的父级不正确。检查this创建JDialog. 这可能是不正确的。例如错误的父对话框或框架实例。

于 2013-01-03T11:20:51.380 回答
0

我在 Windows 上测试它并且工作得很好,所以忘记它。这是 CentOS 的问题,或者至少是虚拟机的问题。

谢谢你们的帮助。

于 2013-01-03T19:18:17.730 回答