gpt4 book ai didi

java - JLayeredPane 中的面板显示其后面的按钮

转载 作者:行者123 更新时间:2023-11-30 11:18:24 25 4
gpt4 key购买 nike

我在 JLayeredPane 上有一些按钮和面板。

当我点击一个按钮时,一个面板通过 setvisible(true) 显示。但是,如果面板后面有一个按钮,并且我将鼠标悬停在按钮上,按钮就会出现在面板上。

我正在使用 JLayeredPane 将面板移到前面。

这是当我点击按钮显示面板时发生的情况。

   private void jbOffCenActionPerformed(java.awt.event.ActionEvent evt) {                                        
if(!offsetedilmis)
{
jPOffsetSor.setVisible(true);
KHLayered.moveToFront(jPOffsetSor);
offsetedilmis = true;
jbOffCen.setText("<html><center>RESET<br>CENTRE");
}
else if(offsetedilmis)
{
jbOffCen.setText("<html><center>OFFSET<br>CENTRE");
offsetedilmis = true;
}
}

顺便说一句,我正在使用 netbeans 的设计器。

自动生成代码以将面板添加到 JLayeredPanel:

KHLayered.add(jPOffsetSor, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 250, 450, 150));

没有任何点击的主屏幕。 First

点击 OFFSET CENTER 按钮,面板出现。 Second

如果我将鼠标悬停在面板后面的按钮上,它们就会出现在前面。但我已经将面板移到前面。我应该为按钮或面板设置一些属性开/关吗? third

最佳答案

您可以尝试使用 dialogue window 而不是使用 Jpanel 来显示消息.

对于此示例,您可以使用(尝试此代码,但它可能包含错误):

Object[] options = {"<html><center>RESET<br>CENTRE",
"<html><center>OFFSET<br>CENTRE"};
int n = JOptionPane.showOptionDialog(frame,
"Left click...", // the title of the window
"Pop-up window", // the meassage in the window
JOptionPane.YES_NO_OPTION,
JOptionPane.QUESTION_MESSAGE,
null,
options, //the titles of buttons
options[0]);

您还有很多其他选择。您可以在 api 或我之前提供的网站中探索它。

它要简单得多,因为你不需要有 actionperformed 方法!

干得好!

关于java - JLayeredPane 中的面板显示其后面的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23870239/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com