10

我想更改 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   
4

7 回答 7

22

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

//GEN-BEGIN:initComponents
//GEN-END:initComponents
于 2014-04-03T18:04:51.440 回答
18

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

第一的:

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

请注意,在这个项目中,我有两个文件,CustomTextField并且NewJFrame.

在此处输入图像描述

CustomTextField 的代码只是扩展了一个JTextField

package test4;

import javax.swing.JTextField;

public class CustomTextField extends JTextField {

}

然后,在调色板窗口中,右键单击并单击“调色板管理器...”

在此处输入图像描述

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

在此处输入图像描述

然后我选择CustomTextField

在此处输入图像描述

它就在调色板管理器中,我可以将它拖放到我的 GUI 中。

在此处输入图像描述

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

注意 #2:我在使用 Java Web Start 和我自己的自定义库时遇到了问题。7u25 发布了一个错误,每当加载我的自定义库时,都会导致 JNLPClassLoader 出现 NPE,因此我必须从项目而不是库中导入组件。

第二:

有一种更骇人听闻的做事方式,但有时它是必要的:在 GUI 编辑器中,您可以右键单击组件并单击“自定义代码”。在此处输入图像描述然后,您可以更改变量定义(而不是声明)。如果您需要更改变量声明,那么它会变得更加骇人听闻,我建议您此时只需手写代码。但是,要通过此窗口执行此操作,您可以通过添加/**/周围来“注释”“变量声明代码”中的部分private javax.swing.JTextField jTextField1;并添加您自己的变量声明。

第三:

您的另一个选择是手写。:) 如果您需要简单的 Swing 组件或可以添加到调色板的组件,我推荐使用 GUI 编辑器。如果您需要更复杂和自定义的 Swing 组件,那么您将需要开始手写此代码。无论如何,大多数人都会建议您这样做。然而,我很自豪地喜欢 Netbeans 的 GUI 编辑器。

于 2013-08-23T18:52:12.723 回答
1

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

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

  2. 没有特殊原因,它在磁盘上被写保护。=> 使其可写

  3. 它由一些版本控制系统控制,该系统在将文件检出系统之前阻止编辑。好吧检查一下。

  4. 它是由 netbeans 生成的一些文件(从您发布的源代码来看,实际上可能是这种情况)。在这种情况下,您可能可以在另一个编辑器(记事本/vi)中对其进行编辑,但您的更改可能会在下一次代码生成时被覆盖,或者破坏您使用的任何工具的文件。=> 找到工具以及如何使用该工具适当地应用更改。

于 2013-06-16T09:00:22.640 回答
1

Net bean 让您可以在表单视图页面中使用自定义代码。我现在不在带有网豆的计算机上,但是如果您右键单击文本区域及其底部附近

于 2013-06-16T09:01:04.087 回答
0

当你在netbeans中打开一个表单文件时,这个指向表单文件的java文件。

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

  1. 打开 Netbeans 并转到 > 工具 > 选项 > 其他
  2. 文件创建新的文件扩展名>表单>并在关联文件mime中选择:HTML文件
于 2014-03-25T17:37:57.247 回答
0

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

于 2015-09-17T13:19:43.770 回答
-1

最简单的方法来完成它。

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

1-注意netbeans中的代码行。

2-关闭 netbeans IDE。

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


在我的情况下,我需要更改 Registration.java 文件,所以我用文本编辑器打开它


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

5-更改代码

6-保存文件

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

于 2021-02-23T17:18:43.287 回答