X컨트롤 외관 기능 사용하기
- 업데이트 날짜:2025-08-27
- 3분 (읽기 시간)
외관 기능은 X컨트롤의 모양을 정의합니다. 외관 기능은 외관 VI로 나타냅니다. X컨트롤이 외관 기능을 요구하므로, 사용자가 X컨트롤을 생성할 때 LabVIEW는 자동으로 외관 VI를 X컨트롤 라이브러리에 추가합니다. 외관 VI는 재호출 VI여야만 합니다.
외관 VI 편집하기
외관 VI에 LabVIEW 컨트롤과 인디케이터를 추가하여 X컨트롤의 프런트패널을 생성합니다. 기본으로, 외관 VI는 데이터, 디스플레이 상태, 컨테이너 상태 컨트롤과 데이터, 디스플레이 상태, 작업 인디케이터를 포함합니다. 이 컨트롤과 인디케이터는 숨겨져 있으며 X컨트롤 모양의 일부가 아닙니다. 프런트패널 윈도우의 크기를 조정하여 X컨트롤의 모양을 구성하는 컨트롤과 인디케이터에만 맞도록 합니다. 외관 VI의 윈도우 모양 프로퍼티를 설정하여 X컨트롤의 크기와 모양을 조절합니다.
외관 VI의 블록다이어그램은 프런트패널 컨트롤과 외관 VI 자체의 이벤트를 다룹니다. 이벤트 구조를 가진 While 루프를 포함합니다. 외관 VI는 연속적으로 실행하는 VI가 아닙니다. LabVIEW는 VI가 처리해야 할 지연된 이벤트가 있을 때만 외관 VI를 호출합니다. LabVIEW는 현재 데이터, 디스플레이 상태, 컨테이너 상태와 함께 외관 VI를 호출합니다. VI는 이벤트를 처리하고 업데이트된 데이터, 디스플레이 상태, 수행된 동작의 타입을 반환합니다.
컨테이너 상태 클러스터를 사용하여 X컨트롤의 인스턴스에 대한 정보를 제공합니다. 컨테이너 상태 클러스터는 세 원소 즉, 인디케이터?, 실행 모드?, 참조 번호를 포함합니다. 인디케이터?를 사용하여 X컨트롤 인스턴스가 컨트롤인지 또는 인디케이터인지 결정합니다. 실행 모드?를 사용하여 X컨트롤을 사용하는 VI가 실행중인지 유휴인지 결정합니다. 실행 모드?는 객체소유 VI가 실행 중일 때 참으로 설정됩니다. 참조 번호는 X컨트롤에 대한 정보를 쿼리하는 데에만 사용하는 X컨트롤 인스턴스의 참조입니다. 참조 번호를 사용하여 외관 VI의 X컨트롤 인스턴스를 수정하지 마십시오.
외관 VI가 데이터나 디스플레이 상태를 변경할 때, 외관 VI는 동작 클러스터를 업데이트하고 LabVIEW에 변경을 알립니다. 작업 클러스터는 세 원소 즉, 변경된 데이터, 변경된 상태, 작업 이름을 포함합니다. 외관 VI가 데이터 출력 인디케이터를 변경할 때 변경된 데이터를 참으로 설정합니다. 외관 VI가 디스플레이 상태 출력 인디케이터를 변경할 때 변경된 상태를 참으로 설정합니다. 옵션으로, 작업 이름을 사용하여 수행된 동작의 이름을 붙입니다. 이 이름은 편집≫실행 취소 옵션을 선택할 때 나타납니다. 일반적으로, 외관 VI는 프런트패널 컨트롤에 생성된 이벤트에 대한 응답으로 데이터나 디스플레이 상태를 변경합니다.
외관 VI 이벤트
또한, 외관 VI는 특정한 사용자 상호작용에 대응하여 생성된 이벤트에 응답합니다. 이러한 이벤트에는 데이터 변경, 디스플레이 상태 변경, 방향 변경, 실행 상태 변경 이벤트가 포함됩니다. 외관 VI는 데이터 변경과 디스플레이 상태 변경 이벤트를 처리하여 X컨트롤이 적절하게 기능하도록 해야 합니다. 방향 변경과 실행 상태 변경 이벤트 처리는 옵션입니다.
LabVIEW는 외관 VI를 호출하여 이벤트를 처리합니다. 예를 들어, X컨트롤을 복사하면 LabVIEW는 4 개의 이벤트 모두를 생성하고, 외관 VI를 X컨트롤의 새 인스턴스로 호출합니다. LabVIEW는 또한 X컨트롤을 포함하는 VI의 프런트패널이 로드될 때에도 4 개의 이벤트 모두를 생성하고 외관 VI를 호출합니다. X컨트롤을 포함하는 VI가 편집 모드에서 실행 모드로 전환하거나 그 반대로 전환하는 경우, LabVIEW는 실행 상태 변경 이벤트를 생성하고 VI의 실행 상태 변화에 응답할 수 있도록 외관 VI를 호출합니다.
편집≫실행 취소 또는 편집≫다시 실행을 선택할 때에도 LabVIEW는 외관 VI를 호출합니다. LabVIEW는 외관 VI의 동작이 상태를 변경하기 전에 X컨트롤의 디스플레이 상태를 되돌립니다. 현재 디스플레이 상태가 이전 상태를 대체합니다. LabVIEW는 디스플레이 상태 변경 이벤트를 생성하고, 외관 VI를 호출하여 실행 취소 또는 다시 실행 동작 이후에 X컨트롤을 업데이트합니다.
각 이벤트 케이스를 편집하여 X컨트롤이 각 이벤트에 응답하는 방법을 설정합니다. 빨리 응답하는 X컨트롤을 생성하려면, 이벤트를 처리하고 최대한 빨리 끝내도록 외관 VI를 설정합니다. [기다림] 함수를 사용하여 이벤트 구조 안의 While 루프의 실행을 지연하지 않습니다.