如何在netbeans中更改不可编辑/生成的代码

时间:2013-06-16 08:50:28

标签: java mysql swing netbeans

我想更改Netbeans中的不可编辑代码,
我想替换 带有ObservingTextField的javax.swing.JTextFeild
为了实现日期选择器,我将一个类导入到我的项目中 但Netbeans不允许我编辑代码。请帮忙

// Variables declaration - do not modify                     
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JPanel jPanel1;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jTable1;
`private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;`
// End of variables declaration   

7 个答案:

答案 0 :(得分:20)

另一个选项删除特殊注释。您无法在NetBeans中看到,但如果您在其他文本编辑器(例如记事本)中打开,您将看到关于非可编辑部分的开头和结尾的注释。评论如下:

//GEN-BEGIN:initComponents
//GEN-END:initComponents

答案 1 :(得分:18)

如果要将自定义组件添加到使用Netbeans GUI编辑器(称为:Matisse)的文件中,有以下几种方法:

首先:

您可以将该组件添加到“Palette”管理器中。我个人在这方面取得了有限的成功,特别是在我自己的自定义库中添加组件时。但是,您可以添加组件并选择“从项目中”,然后选择您的项目,您应该看到列出了您的组件(如果没有,请运行干净和构建)。

请注意,在此项目中,我有两个文件CustomTextFieldNewJFrame

enter image description here

CustomTextField的代码只是扩展JTextField

的代码
package test4;

import javax.swing.JTextField;

public class CustomTextField extends JTextField {

}

然后,在Palette窗口中,右键单击并单击“Palette Manager ...”

enter image description here

然后在调色板管理器中,单击“从项目添加...”(如果要从库中添加,则单击“从库中添加...”等。

enter image description here

然后我选择CustomTextField

enter image description here

在那里繁荣,它是在调色板管理器中,我可以拖动&把它放到我的GUI中。

enter image description here

注意:如果您需要在多个项目中使用此组件,这种方式不是很好。调色板管理器是针对整个Netbeans的,所以如果您尝试使用另一个项目中存在的组件,你会遇到麻烦。

注意#2:我遇到了Java Web Start和我自己的自定义库的问题。加载自定义库时There is a bug that was released with 7u25 that causes a NPE from the JNLPClassLoader,因此我必须从项目而不是库中导入组件。

第二

有一种更糟糕的做事方式,但有时是必要的:在GUI编辑器中,您可以右键单击该组件并单击“自定义代码”。enter image description here然后您可以更改变量定义(not the declaration)。如果您需要更改变量声明,那么它会变得更加hackish,我建议您在此时手动编写代码。但是,要通过此窗口执行此操作,您可以通过在/*周围添加*/private javax.swing.JTextField jTextField1;来“注释”“变量声明代码”中的部分,并添加您自己的变量声明。 / p>

第三

你的另一个选择是手写。 :)如果您需要可以添加到调色板的简单Swing组件或组件,我建议使用GUI编辑器。如果您需要更复杂和自定义的Swing组件,那么您将需要开始编写此代码。大多数人会建议你这样做。 I, however, proudly love Netbeans` GUI Editor.

答案 2 :(得分:1)

这取决于为什么netbeans阻止您编辑该源文件。

  1. 它是您刚刚导入项目的某个库的一部分。这意味着您的项目实际上正在使用已编译的类/ jar文件。编辑此文件没有意义。找到该库的作者并提交更改请求。这也适用于java API本身。当然,他们实际接受变更请求的可能性很小。

  2. 无特殊原因,它在磁盘上被写保护。 =>让它可写

  3. 它由某个版本控制系统控制,该系统在将文件检出系统之前阻止编辑。好吧,看看吧。

  4. 这是netbeans生成的一些文件(根据您发布的源代码判断,实际情况可能如此)。在这种情况下,您可能可以在另一个编辑器(notepad / vi)中编辑它,但您的更改可能会在下一代代码中被覆盖,或者在您使用的任何工具中中断文件。 =>找到该工具以及如何使用该工具适当地应用更改。

答案 3 :(得分:1)

Net beans允许您从表单视图页面使用自定义代码。我现在不在带有网络bean的计算机上,但是如果你右键单击文本区域并且它靠近底部

答案 4 :(得分:0)

在netbeans中打开表单文件时,这指向表单文件的java文件内容。

编辑此不可编辑文件的解决方案是:

  1. 打开Netbeans并转到>工具>选项>其它
  2. 文件创建新的文件扩展名>表单>并在关联文件mime中选择:HTML文件

答案 5 :(得分:0)

我使用简单的解决方法来编辑文件。首先,我将整个代码复制到记事本中,然后删除该类。然后我创建一个Java类并将代码粘贴回来。请记住,尽管您现在还没有获得GUI构建器。所以保持在mi

答案 6 :(得分:-1)

最简单的方法。

您可以通过使用您的文本编辑器而不是 netbeans 来简单地完成它。但有几件事要提醒::::

1-注意 netbeans 中的代码行。

2-关闭 netbeans IDE。

3-然后打开要更改系统中其他文本编辑器的文件。


就我而言,我需要更改 Registration.java 文件,以便使用文本编辑器打开它


4- 找到您需要更改的代码行

5- 更改代码

6- 保存文件

通过这种方式你可以做到。希望你能找到解决方案