如何修改/添加代碼到NetBeans中的Java的initComponents()
方法?當我嘗試添加任何代碼行時,該區域看起來像只讀,並且以灰色突出顯示!這可能是爲了安全,但我想有一種方法可以禁用它。如何在Java中使用NetBeans修改/添加代碼到initComponents()方法?
回答
當您在GUI編輯器中創建UI時,IDE將重新生成initComponents()方法。該方法是'保護',以防止這種再生覆蓋用戶書面代碼。
有一對夫婦的方式將代碼添加到該方法,間接地:
落一個新的組件到設計 編輯器「畫布」的窗口。
輸入碼作爲 下面的代碼屬性之一的一部分: 預創建代碼,後創作 代碼,預初始化代碼,後初始化代碼, 後監聽器代碼,預填充 代碼,後人口代碼和 全部設置代碼。
還有一些其他代碼屬性不會改變initComponents()方法......但可能非常有用:預聲明代碼和後聲明代碼。 alt text http://blogs.sun.com/vkraemer/resource/code-properties.png 注意:這些屬性的編輯器不是'豐富'的,所以我建議在「常規編輯器」中創建方法,您只需在initComponents()中調用該方法即可。
可以通過定位或改變「底板」或控件的「常規」屬性修改在的initComponents代碼()方法。
是的initComponents方法是隻讀的,以保持對IDE的完全控制。你可以在initComponents之後的構造函數中添加你的。
public class NewJFrame extends javax.swing.JFrame {
/** Creates new form NewJFrame */
public NewJFrame() {
initComponents();
myInitComponents();
}
public void myInitComponents() {
}
要允許在源代碼和Matisse GUI編輯器中進行更改,NetBeans將禁止在它所稱的「保護塊」中進行編輯。 雖然您可以想象IDE能夠解釋您編寫的幾乎任何類型的GUI代碼,但實際上,IDE開發人員更容易將自動生成的GUI代碼封裝在單個方法(initComponents())中並保留休息供您編輯。
如果你一定要知道自己在做什麼,你可以方便地編輯從外部編輯器中的.java文件,但:
- 一定要保存當前版本的某處
- 檢查通過在NetBeans可視化編輯器中打開課程,您的更改不會造成任何問題
推測您正在做的是使用Matisse GUI工具編寫應用程序。
馬蒂斯生成不可編輯的代碼塊。這是Matisse所要求的,以便該工具保持與代碼庫的同步。
Matisse提供了多種選項,允許在代碼塊之前,之後或之內插入自定義代碼,例如initComponents()
。
參見下面的圖像:
此示出了用於一個JPanel和一些代碼插入選項的屬性標籤。
我通過試驗和錯誤發現,在用戶看到面板之前需要完成的初始化應當添加爲「預先初始化代碼」。在我的情況下,我需要填充一個下拉框(在AWT中稱爲「選擇」)。似乎有關於使用Matisse的詳細文檔很少。所以,我希望這會幫助其他人。
如果在Design View
中右鍵單擊組件,然後單擊「Customize Code
」選擇,則可以修改InitComponent
代碼中的代碼。可以定製幾行顯式代碼。
選擇所有的代碼並複製到像gedit或記事本這樣的外部編輯器中。
然後刪除你的jframe文件。
在netbeans中使用相同名稱在同一個包中創建一個新的java類。
複製編輯器文件中的所有內容並將其粘貼到新創建的Java類中。
- 關閉Netbeans的
- 轉到那裏是你的表單文件
- 備份的2個文件的擴展名「.FORM」和「的.java」
- 編輯2個文件的擴展名」文件夾路徑。形式「和」.java「在記事本編輯器中。例如,如果您的表單名稱是「myForm」,則必須在文件夾中包含「myForm.form」和「myForm.java」文件。
- 第一個文件「.form」是xml文件,第二個「.java」是java代碼
- 在兩個文件中仔細編輯代碼保存更改並打開NETBEANS。 那就是它!
- 1. 如何將代碼修改爲Net Bean上的initComponents()方法?
- 2. 向initComponents添加參數的其他方法[java-netbeans]
- 3. Netbeans initComponents正在竊聽代碼,該如何解決?
- 4. NetBeans - 在代碼更改時自動將@author添加到類中
- 5. 如何將chilkatsoft添加到netbeans中java
- 6. 如何將此代碼添加到使用ASM的方法?
- 7. 如何使用Netbeans/Github在修訂之間導出修改/添加的文件?
- 8. 的ArrayList在Java中,將代碼添加到方法
- 9. 使用netbeans在java中調試代碼
- 10. 在django中使用POST方法時將代碼添加到CreateView
- 11. 如何在JAVA中添加RSS代碼
- 12. 如何在WEEBLY中添加java代碼
- 13. 如何在Netbeans(java)中添加標題?
- 14. 的Netbeans的TopComponent的initComponents
- 15. 如何在Pry中添加/修改/刪除方法?
- 16. 如何將實時代碼方法(如'has_man')添加到庫中
- 17. 修改添加方法在實體Framwork
- 18. 如何在NetBeans中使用Java代碼連接Sybase數據庫?
- 19. 在Java中使用Groovy添加方法
- 20. 在Java中使用LinkedList添加方法
- 21. 如何使用Roslyn修改源代碼?
- 22. 如何使用JDT修改源代碼?
- 23. 如何使用java.canü修改此代碼
- 24. 無法使用maven修改netbeans中的java項目
- 25. 在Java中修改嘗試代碼
- 26. Java代碼生成:如何修改現有的java文件方法?
- 27. 如何在Netbeans 7中附加缺少的java JDK源代碼
- 28. 如何在Netbeans中爲特定版本添加代碼摺疊
- 29. 修改Ruby源代碼 - 無法修改方法
- 30. 如何使用java代碼將形狀添加到xml佈局?
這篇文章是undereppreciated,是一個非常乾淨的方式添加自定義組件。謝謝。 – Jigzat
它適用於我和代碼仍然或多或少乾淨和可讀非常感謝;-) – Sangimed
建議替代[這裏](http://stackoverflow.com/a/2561540/230513)。 – trashgod