2016-08-09 2 views
0

저는 현재 MATLAB의 GUIDE GUI 프로그래밍을 배우고 있습니다. 그림에 개체를 배치하면 해당 'CreateFcn'콜백 함수가 관련 .m 파일에 생성됩니다. MATLAB의 의견에 따르면이 함수는 객체가 만들어 질 때 실행됩니다 (이 객체의 생성자라고 생각합니다).MATLAB GUI - 코드에서 CreateFcn 콜백을 제거하려면 어떻게합니까?

그러나 모든 개체에 'CreateFcn'생성자가있는 것으로 보입니다. 정적 텍스트 개체에는이 콜백 함수가없는 것처럼 보입니다. 현재로서는이 함수가 코드를 읽기가 더 어렵게 만드는 것처럼 보입니다. 따라서 삭제할 수 있는지 궁금합니다.

삭제하면 함수를 찾을 수 없다는 코드에 오류가 발생하는 경향이 있습니다. 그래서 내 질문 : 그것은 declutter 내 코드 'CreateFcn'메서드를 삭제할 수 있습니까?

감사합니다.

답변

2

물론 가능합니다.

개체를 두 번 클릭하여 속성 창을 열고 "CreateFcn"속성을 찾고 값을 빈 문자열로 설정하십시오. 그런 다음 .m 파일로 이동하여 CreateFcn 코드를 제거하십시오. 이렇게하면 MATLAB은 더 이상 누락 된 CreateFcn에 대해 불평하지 않습니다.

CreateFcn은 실제로 개체의 모든 속성이 설정된 후에 발생하기 때문에 실제로는 생성자가 아닙니다. 이것은 사용자가 객체의 초기 동작을 동적으로 추가로 커스터마이징 할 수있는 기회를 제공하는 선택적 후 생성자 이벤트와 같습니다. 예를 들어, 개체가 나타나는 배경색에 따라 개체 색을 사용자 지정할 수 있습니다. 대부분의 컨트롤 개체의 경우 기본 동작이 이미 충분히 유용 할 것입니다. 그래서 당신이 안전하게 CreateFcns를 제거 할 때까지 사용할 수있는 좋은 변명을 찾을 수 있습니다.

관련 문제