2009-04-23 18 views
8

Ayarların kilitli olduğu çok sayıda form penceresiyle oldukça önemli bir Java GUI uygulaması oluşturdum. Bu .form dosyalarını değiştirebileceğim gerçek Java kaynak koduna dönüştürmenin veya yeniden düzenlemenin herhangi bir yolu olduğunu merak ediyorum.Java GUI Builder .form dosyalarını Kaynak Koduna Dönüştürün?

GUI, Netbeans 6.5 kullanılarak oluşturuldu.

+0

Bunu .form dosyalarının Netbeans'e özgü olduğunu ve .java dosyalarının windows için tam kaynak koduna sahip olduğunu düşündüm. Bu doğru değil mi? Java dosyalarını düzenleyemez misin? – kazanaki

cevap

6

Anlayışım, ".form" dosyalarının yalnızca GUI bileşenlerinin nerede olduğunu takip etmek için Netbeans GUI oluşturucusu tarafından kullanıldığı. Tasarım görünümünde bileşenler eklediğinizde, Netbeans gerçek kaynak (.java) dosyalarını otomatik olarak günceller. 'un gerçekten bu .java dosyalarını doğrudan bir düğmedeki etiketi değiştirmesi için değiştirebilirsiniz, ancak Netbeans içinde değiştirirseniz, kaynak dosyalarını otomatik olarak yeniden oluşturmak için .form dosyalarını kullanır ve manuel değişikliklerinizi yok eder.

Deneyimlerime göre, .java dosyalarını el ile değiştirmeye karar verdikten sonra .form dosyaları eşitlenmiyor ve Netbeans GUI oluşturucusunu artık düzgün kullanamayacaksınız.

4

kazanaki haklı, oluşturulan java dosyaları değiştirilebilir ancak sonuçta elde edilen .java dosyaları, kötü şöhretli, büyük ve yorumlanması zor. Ayrıca, bazı şeyleri değiştiremezsiniz (oluşturulan .java dosyasındaki yorumlarda belirtildiği gibi), matisse'i işe yaramaz hale getirmeden, dosyanın belirli şeylere sahip olmasını beklediği için değiştiremezsiniz. Yani, Matisse'in ayak parmaklarına basmamaya dikkat ederseniz, kodunuzu koyabilirsiniz ve kodunuza dokunmayacaksınız.

Sulawesi de doğrudur, eğer Matisse'in görüşünde olan herhangi bir şeyi değiştirirseniz, bunun üzerine yazılacaktır. Matisse dışında yaptığınız tüm değişiklikler, matisse'in kodu oluşturmak için kullandığı xml tarafından kapsanan herhangi bir öğenin dışında olmalıdır.

Bu tür bir şeyi daha önce sınırlı başarı ile denedim ve sonunda bu çıldırtıcı baş ağrılarını önlemek için arayüzü yeniden yazdım.

1

Kaynağı düzenleyebilirim, çözümü keşfettim. Sorun, GUI oluşturucuda "AbsoluteLayout" kullanıyordum. Netbeans, .form dosyalarının içinde bulunan gizli bir AbsoluteLayout sınıfı oluşturuyordu. .form dosyalarını sildiysem, proje artık oluşturulmayacaktı. Çözüm, formu "FreeForm" düzeninde olacak şekilde değiştirdi ve sonra .form dosyalarını silip GUI oluşturucu yorumlarını kaldırabilirdim.

Yardımlarınız için teşekkür ederim, ikinize de +1 veriyorum.