将 JFrame 设置为始终在顶部并禁用其后面的所有 JFrame

set JFrame always on top and disable all JFrame behind it

我的项目有 2 个框架,第 1 个是我的主框架,第 2 个是只有单击按钮才能看到的框架。

display jframe.class when the button is click.

这是我执行的按钮操作中的代码

  private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
       jframe jf = new jframe();
          jf.setVisible(true);
          jf.setAlwaysOnTop(true);
    }  

此代码有效,但问题是我希望主框架在第二个框架可见时禁用或不可点击...

我可以使用与 JOptionPane 相同的概念吗?

你本质上是在谈论模态。您应该使用 JDialog 并将模态设置为 true,同时将 JFrame 作为参数传递:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt){
    myFrame = new JFrame("Hello World");
    modal = new JDialog(myFrame, "This is a modal!", true);
    modal.setVisible(true);
    modal.setLocationRelativeTo(null); //Center the modal
}

您可以在此处找到更多文档:

https://docs.oracle.com/javase/tutorial/uiswing/misc/modality.html