- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用netbeans制作TIC TAC TOE游戏,当我完成设计Jframe netbeans自动为我的jButtons生成代码时,我对JAVA真的很陌生,问题是netbeans为我生成的所有代码都是不可编辑的,并且我很难理解
该按钮适用于 X O,您单击它会出现 X O 文本,我希望在我尝试单击一次后将其禁用
jButton.setEnabled(false);
但它使我的按钮变灰,所以我不使用它,因为我希望我的按钮有颜色
我试过了
jButton.removeActionlistener(this);
相反,但它不起作用,我不知道该怎么办了,因为我不明白他们为我生成的代码
这是他们提供给我的代码我无法编辑它有太多按钮,所以也有很多代码,所以我只是在这里举一个 netbeans 提供的示例我
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jButton1 = new javax.swing.JButton();
jButton1.setBackground(new java.awt.Color(204, 204, 204));
jButton1.setFont(new java.awt.Font("Tahoma", 1, 96)); // NOI18N
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
//my code here
}
// Variables declaration - do not modify
private javax.swing.JButton jButton1;
}
我希望在我使用后
jButton.removeActionlistener(this);
在方法中它不允许我在第一次单击后单击该按钮,并且不会使我的按钮变灰,但什么也没有发生,请帮助我
提前致谢。
最佳答案
netbeans automatically generated codes for my jButtons the problem is all the code which netbeans generated for me is uneditable
代码受到保护是有原因的。您应该通过查看 GUI 设计器的属性来更改该代码。例如。如果您想删除某个事件的代码,您应该在组件属性表的“事件”选项卡中执行此操作:
如果您单击对话框中的Remove
,事件处理程序将从您的代码中完全删除。您只需删除可编辑文本字段(其中显示方法名称)中的文本即可实现相同的目的。
but it greyed out my button
这是由外观和感觉驱动的。禁用组件的呈现方式与启用组件不同。
I tried
jButton.removeActionlistener(this);
这不起作用,因为 NetBeans 使用匿名内部类来注册 ActionListener,正如您在 initComponents()
方法中看到的那样。
如果你想动态添加和删除ActionListener,你需要告诉GUI Designer使用主类作为监听器。这可以在“工具”→“选项”→“Java”→“GUI 生成器”下完成:
但是,一旦更改了该设置,就需要重新生成事件处理程序。您需要删除并重新添加它才能应用新一代样式。
我通常创建自己的方法来处理事件,然后从(生成的)事件处理程序中调用它们:
如您所见,事件处理程序中的代码只是分派(dispatch)到另一个方法。这样做的好处是,即使您通过 GUI 设计器删除了事件处理程序,也不会丢失已经编写的代码。
<小时/>NetBeans 的 GUI 设计器是一个极其强大的工具,但它并不能消除理解底层 Swing 框架和 Java 概念的需要。与所有强大的工具一样,它需要一些时间投入才能理解它。
您应该阅读 NetBeans homepage 上的 GUI 设计器教程。 。
您可能想从以下两个开始。
我还没有看过它们(因为我更喜欢文字而不是视频),但您可能还想查看 NetBeans' YouTube channel (如果它包含 GUI 设计器的任何教程)。
关于java - 如何从 NETBEANS 中 jButton 生成的代码中删除 actionlistener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55904079/
我是一名优秀的程序员,十分优秀!