0

NetBeans GUI ビルダーの Matisse を使用して単純な Swing アプリケーションを開発しています。すべてのウィンドウで同じ問題に直面しています。メイン JFrame または他の JDialog で新しい JDialog を開くと、バックグラウンド ウィンドウのどこかをクリックすると、フォアグラウンド JDialog でマウスを使ってフィールドを選択できなくなります。

ここに画像の説明を入力

添付の画像では、バックグラウンド ウィンドウは JFrame であり、フォアグラウンド JDialog を次のように構築します。 new JDialog(this, true);

この問題を解決するために手を貸してくれませんか? ヒントとして、マウス機能を失った後、Tab キーを使用して「ComboBox Rol」またはカレンダー フィールドに進み、スペース バーを押すと、マウス クリックが再度取得され、最初と同じようにすべてが完全に機能します。

コードは次のとおりです。

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 に答える