설정 파일이 .form 파일에 갇혀있는 많은 양식 창이있는 상당한 규모의 Java GUI 응용 프로그램을 만들었습니다. 이 .form 파일을 내가 수정할 수있는 실제 Java 소스 코드로 변환하거나 리팩터링하는 방법이 있는지 궁금하다.Java GUI Builder .form 파일을 소스 코드로 변환 하시겠습니까?
GUI는 Netbeans 6.5를 사용하여 만들어졌습니다.
설정 파일이 .form 파일에 갇혀있는 많은 양식 창이있는 상당한 규모의 Java GUI 응용 프로그램을 만들었습니다. 이 .form 파일을 내가 수정할 수있는 실제 Java 소스 코드로 변환하거나 리팩터링하는 방법이 있는지 궁금하다.Java GUI Builder .form 파일을 소스 코드로 변환 하시겠습니까?
GUI는 Netbeans 6.5를 사용하여 만들어졌습니다.
".form"파일은 GUI 구성 요소의 위치를 추적하기 위해 Netbeans GUI 빌더에서만 사용됩니다. 디자인 뷰에 구성 요소를 추가하면 Netbeans은 실제 원본 (.java) 파일을 자동으로 업데이트합니다. 은 실제로 이러한 .java 파일을 직접 수정하여 단추의 레이블을 변경하지만, Netbeans에서 수행하면 .form 파일을 사용하여 원본 파일을 자동으로 재생성하여 수동 변경을 무효화합니다.
내 경험상 .java 파일을 수동으로 수정하기로 결정하면 .form 파일이 동기화되지 않아 더 이상 Netbeans GUI 빌더를 올바르게 사용할 수 없습니다.
kazanaki가 맞으면 생성 된 java 파일을 수정할 수는 있지만 그 결과 나타나는 .java 파일은 크고 지저분하기 때문에 악명이 높습니다. 또한 파일이 특정 방식으로 물건을 가질 것으로 예상하기 때문에 매트리스를 쓸모 없게 만들지 않고도 (생성 된 .java 파일의 주석에 명시된 것처럼) 일부 내용을 변경할 수 없습니다. 즉, 마티스의 발가락을 밟지 않으려면 조심스럽게 코드를 작성할 수 있으며 코드가 좋지 않을 것입니다.
무법자도 마찬가지입니다. 이미 마티스의 퍼뷰에있는 내용을 변경하면 덮어 씁니다. matisse 외부에서 변경 한 사항은 matisse가 코드를 생성하는 데 사용하는 xml이 포함하는 요소 외부에 있어야합니다.
나는 이런 종류의 시도를 제한된 성공으로 시도하고 마침내 방금이 미친 두통을 피하기 위해 인터페이스를 다시 작성했습니다.
소스를 편집 할 수 있습니다. 해결책을 발견했습니다. 문제는 제가 GUI 빌더에서 "AbsoluteLayout"을 사용하고 있다는 것입니다. Netbeans은 .form 파일 내부에 숨겨진 AbsoluteLayout 클래스를 생성하고있었습니다. .form 파일을 삭제 한 경우 프로젝트가 더 이상 빌드되지 않습니다. 솔루션은 "FreeForm"레이아웃으로 양식을 변경 한 다음 .form 파일을 삭제하고 GUI 빌더 주석을 제거 할 수있었습니다.
도움 주셔서 감사합니다. 나는 둘 다 +1합니다.
.form 파일은 Netbeans에 고유하며 .java 파일에는 창에 대한 전체 소스 코드가 있다고 생각했습니다. 이게 정확하지 않니? 자바 파일을 편집 할 수 없습니까? – kazanaki