타입 정의와 엄격한 타입 정의의 차이점

업데이트 됨 May 3, 2021

해당 제품

소프트웨어

  • LabVIEW Full
  • LabVIEW Professional

문의사항

  • LabVIEW에서 타입 정의 또는 엄격한 타입 정의를 생성할 수 있습니다. 둘의 차이점은 무엇입니까?
  • 기본 값을 변경하는 타입 정의 또는 엄격한 타입 정의가 있는데, 이 변경 사항이 내가 만든 컨트롤의 각 인스턴스에 전파되지 않는 이유는 무엇입니까?

해결책

개요

LabVIEW의 타입 정의와 엄격한 타입 정의는 모두 VI에 배치할 수 있는 사용자 정의 컨트롤 (*.ctl 파일)입니다. *.ctl 파일이 변경되면 해당 컨트롤을 사용하는 모든 VI도 변경되므로 각 VI를 직접 변경할 필요가 없습니다. 타입 정의 컨트롤이 사용될 때, LabVIEW는 컨트롤이 사용되는 모든 곳에서 데이터 타입이 동일한 지 확인합니다. 엄격한 타입 정의는 더 제한적이며 LabVIEW는 컨트롤에 대한 거의 모든 것이 동일하게 유지되도록 합니다.

타입 정의

타입 정의는 데이터 유형이 제어의 마스터 사본과 일치하는 한 다른 이름, 설명, 기본값, 크기, 색상 또는 제어 스타일(예: 슬라이드 대신 노브)을 가질 수 있습니다. 타입 정의는 사용자 지정 컨트롤의 각 인스턴스에 대하여 올바른 "타입"인지만 식별합니다. "타입"에는 숫자 컨트롤의 데이터 범위나 링 컨트롤의 항목 이름과 같은 항목이 포함되지 않습니다. 예를 들어 숫자 컨트롤의 데이터 범위 또는 유형 정의 컨트롤의 일부인 링 컨트롤의 항목 이름을 변경하면 컨트롤의 모든 인스턴스에 대해 이러한 속성이 변경되지 않습니다. 그러나 열거형에 대한 타입 정의에서 항목 이름을 변경하면 항목 이름이 열거형에 대한 "타입"의 일부이기 때문에 모든 인스턴스도 변경됩니다.

엄격한 타입 정의

업격한 타입 정의 컨트롤은 크기, 색상 및 모양을 포함하여 컨트롤에 대한 거의 모든 것을 동일하게 만듭니다. 엄격한 타입 정의는 더 제한적이며 타입 정의와 달리 숫자 컨트롤의 범위 검사 및 링 컨트롤의 항목 이름과 같은 속성 값을 정의합니다. 엄격한 타입 정의에 대한 유일한 유연성은 이름, 설명 및 기본값이며 제어의 각 인스턴스에 따라 다를 수 있습니다. 엄격한 타입 정의 컨트롤에 사용할 수 있는 유일한 속성은 표시, 비활성화, 키 포커스, 깜빡임, 위치 및 경계와 같은 컨트롤의 모양에 영향을 주는 속성입니다. 예를 들어 다양한 컨트롤의 클러스터로 구성된 엄격한 타입 정의가 있는 경우 각 개별 컨트롤의 속성을 사용할 수 없습니다. 전체 클러스터에 대한 모양 속성 만 사용할 수 있습니다.
 

추가 정보

대부분의 프로그래머는 유형 정의 및 엄격한 유형 정의를 사용하여 여러 컨트롤의 클러스터인 사용자 지정 컨트롤을 만듭니다. 그런 다음 고객 제어에서 클러스터에 추가 항목을 추가하고 애플리케이션 전체에 쉽게 전파할 수 있습니다. 이는 각 SubVI에 대해 클러스터를 수동으로 업데이트하지 않기 때문에 클러스터와 상호 작용해야 하는 SubVI가 있는 경우 특히 유용합니다.