사용자 인터페이스 기술

이 항목에서는 Windows 기반 애플리케이션용 UI를 개발하기 위한 Microsoft 기술에 대한 간략한 설문 조사를 제공합니다. 특정 기술을 사용할지 여부를 결정하는 데 필요한 정보를 제공하고 해당 기술에 대한 자세한 정보를 찾을 수 있는 위치를 식별합니다.

이 항목에서는 다음 기술에 대해 설명합니다.

관리되지 않는 애플리케이션을 위한 사용자 인터페이스 기술

이 섹션에서는 관리되지 않는 Windows 애플리케이션용 UI를 개발하기 위한 Microsoft 기술에 대해 설명합니다. 이러한 기술은 WindowsAPI 프로그래밍 개념에 익숙하고 Microsoft SDK(소프트웨어 개발 키트)를 사용하는 숙련된 C/C++ 개발자를 위한 것입니다. 일부 기술에는 그래픽 프로그래밍 문제에 대한 지식 또는 COM(구성 요소 개체 모델) 프로그래밍의 기본 사항에 대한 지식과 같은 추가 필수 구성 요소가 있습니다.

Windows 컨트롤

Windows 컨트롤은 사용자가 애플리케이션과 상호 작용할 수 있도록 다른 창(일반적으로 클라이언트 창 또는 대화 상자)과 함께 사용되는 사용자 인터페이스 요소입니다. 기존 Windows 기반 애플리케이션의 UI를 구성하는 대부분의 요소는 메뉴, 스크롤 막대, 단추, 목록 상자, 트리 보기 등의 항목을 포함하여 Windows 컨트롤입니다.

Windows 컨트롤은 모든 버전의 Windows에서 지원됩니다. 그러나 컨트롤을 지원하는 런타임 구성 요소는 시간이 지남에 따라 진화했기 때문에 이후 버전에서 도입된 일부 컨트롤과 기능은 이전 버전에서 지원되지 않습니다. 애플리케이션은 버전을 검색하고 사용 가능한 기능만 사용해야 합니다.

다양한 Windows 버전에서 실행되는 관리되지 않는 Windows 기반 애플리케이션에 대한 기존 UI를 만들려면 Windows 컨트롤을 사용해야 합니다.

자세한 내용은 Windows 컨트롤을 참조하세요.

시각적 스타일

비주얼 스타일은 컨트롤의 모양에 대한 사양입니다. 예를 들어 Visual Style은 컨트롤의 전반적인 모양을 정의하고 소프트웨어 개발자가 애플리케이션의 모양과 조정하도록 해당 컨트롤의 시각적 인터페이스를 구성할 수 있습니다. 또한 비주얼 스타일은 모든 Windows 기반 애플리케이션이 애플리케이션의 모양을 표준화하는 메커니즘을 제공합니다.

시각적 스타일은 Windows XP 이상에서 지원되며 표준 Windows 컨트롤 및 Microsoft Win32 일반 컨트롤의 모양에만 영향을 줍니다.

애플리케이션 UI의 모양과 일치하도록 표준 Windows 컨트롤 및 일반 컨트롤의 모양을 변경해야 하는 경우 비주얼 스타일을 사용해야 합니다.

자세한 내용은 시각적 스타일 사용을 참조하세요.

Windows 리본 프레임워크

Windows 리본 프레임워크는 Windows 기반 애플리케이션을 위한 풍부한 명령 프레젠테이션 시스템입니다. 애플리케이션 창 맨 위에 있는 일련의 탭과 상황에 맞는 메뉴 시스템을 통해 애플리케이션의 주요 기능을 노출하는 리본 명령 모음으로 구성됩니다. Windows 리본 프레임워크는 다음 Windows 버전에서 지원됩니다.

  • Windows Vista SP2(서비스 팩 2) 및 Windows Vista용 플랫폼 업데이트
  • Windows 7 이상
  • Windows Server 2008 R2
  • Windows Server 2008 SP2(서비스 팩 2) 및 Windows Server 2008용 플랫폼 업데이트

기존 Windows 애플리케이션의 계층화된 메뉴, 도구 모음 및 작업창 대신 명령 UI를 구현하려면 Windows 리본 프레임워크를 사용해야 합니다.

Windows 리본 프레임워크는 COM 프로그래밍에 능숙한 개발자를 위한 것입니다.

자세한 내용은 Windows 리본 프레임워크를 참조하세요.

Windows 애니메이션 관리자

Windows 애니메이션 관리자는 강력한 애니메이션 엔진과 표준화된 프로그래밍 인터페이스를 제공하여 UI 요소의 애니메이션을 지원합니다. 플랫폼은 UI 애니메이션 시퀀스의 개발 및 유지 관리를 간소화하고 개발자가 일관되고 직관적인 UI 애니메이션을 구현할 수 있도록 합니다. Windows 애니메이션은 Direct2D, Microsoft Direct3D 또는 Windows GDI+를 비롯한 모든 그래픽 플랫폼에서 사용할 수 있습니다.

Windows 애니메이션 프레임워크는 Windows Vista용 플랫폼 업데이트 SP2 및 Windows Vista용 플랫폼 업데이트 및 Windows 7 이상을 사용하는 Windows VistaWindows Vista에서 지원됩니다.

관리되지 않는 Windows 기반 애플리케이션의 UI에 애니메이션 시퀀스를 추가하려면 Windows 애니메이션 관리자를 사용해야 합니다.

자세한 내용은 Windows 애니메이션 관리자를 참조하세요.

바탕 화면 창 관리자

DWM(데스크톱 창 관리자)은 Windows Vista에 도입된 기능인 데스크톱 컴퍼지션을 지원하는 Windows 런타임 구성 요소입니다. 데스크톱 컴퍼지션을 통해 DWM은 유리 창 프레임, 3차원 창 전환 애니메이션, Windows Flip 및 Windows Flip3D 및 고해상도 지원과 같은 UI의 시각 효과를 가능하게 합니다.

DWM은 데스크톱 컴퍼지션과 관련된 많은 시각적 효과를 제어하기 위한 API를 노출합니다. 예를 들어 애플리케이션은 썸네일을 표시하고, 최상위 창의 클라이언트 영역에 반투명하고 흐릿한 효과를 적용하고, 창의 비 클라이언트 영역에서 사용되는 투명도 및 전환 효과를 제어할 수 있습니다.

DWM은 Windows Vista 및 Windows Server 2008에서 지원됩니다.

애플리케이션이 데스크톱 컴퍼지션과 관련된 시각 효과에 액세스하고 제어해야 하는 경우 DWM을 사용해야 합니다.

자세한 내용은 데스크톱 창 관리자를 참조하세요.

Windows Automation API

Windows Automation API를 통해 개발자는 시각, 청각 또는 동작 장애가 있는 사용자를 포함하여 가능한 가장 광범위한 대상 그룹이 액세스할 수 있는 애플리케이션을 만들 수 있습니다. API는 애플리케이션 사용자 인터페이스를 구성하는 요소에 대한 정보를 노출하여 작동합니다. 화면 읽기 프로그램과 같은 보조 기술 애플리케이션은 정보를 사용하여 장애가 있는 사용자가 사용할 수 있는 방식으로 UI를 표시할 수 있습니다.

Windows Automation API는 Microsoft Active Accessibility와 Microsoft UI 자동화 두 개의 별도 API 프레임워크로 구성됩니다. Microsoft Active Accessibility는 Windows 95에서 플랫폼 추가 기능으로 도입된 레거시 API입니다. UI 자동화 Microsoft Active Accessibility의 후속 기능이며 UI 자동화 사양의 Windows 구현입니다.

Microsoft Active Accessibility에 대한 전체 지원은 Windows XP 및 Windows Server 2003에 기본 제공됩니다. Microsoft Active Accessibility는 sp6(서비스 팩 6) 이상 및 Windows 98을 사용하는 Windows NT 4.0에서도 지원됩니다. UI 자동화 Windows XP, Windows Server 2003, Windows Server 2003 R2, Windows Vista, Windows 7, Windows Server 2008 및 Windows Server 2008 R2 운영 체제에서 지원됩니다.

애플리케이션에 사용자 지정 컨트롤 또는 기타 사용자 지정 UI 기능이 포함된 경우 Windows Automation API를 사용하여 사용자 지정 컨트롤 및 기능에 완전히 액세스할 수 있도록 해야 합니다. 일반적으로 개발자는 COM 개체 및 인터페이스, 유니코드 및 Windows API 프로그래밍에 대해 보통 수준의 이해가 필요합니다.

자세한 내용은 Windows Automation API를 참조하세요.

Speech API

MICROSOFT Speech API(SAPI)는 애플리케이션과 음성 엔진 간에 높은 수준의 인터페이스를 제공합니다. SAPI는 다양한 음성 엔진의 실시간 작업을 제어하고 관리하는 데 필요한 모든 하위 수준 세부 정보를 구현합니다.

SAPI 엔진의 두 가지 기본 유형은 TTS(텍스트 음성 변환) 시스템과 음성 인식기입니다. TTS 시스템은 합성 음성을 사용하여 텍스트 문자열과 파일을 음성 오디오로 합성합니다. 음성 인식기는 사람의 음성 오디오를 읽을 수 있는 텍스트 문자열 및 파일로 변환합니다.

사용자가 키보드, 마우스 및 디스플레이와 같은 표준 입력 디바이스 외에도 TTS 및 음성 인식을 통해 애플리케이션과 상호 작용할 수 있도록 하는 UI를 구현하려면 SAPI를 사용해야 합니다.

자세한 내용은 SAPI(Microsoft Speech API) 5.4를 참조하세요.

배율 API

MAPI(배율 API)는 화면의 일부를 확대하고 색 효과 및 기타 변환을 적용하는 데 사용됩니다. 이 API는 주로 화면의 일부를 확대하여 쉽게 볼 수 있도록 보조 기술 애플리케이션을 위한 것입니다.

MAPI는 Windows Vista, Windows 7, Windows Server 2008 및 Windows Server 2008 R2에서 지원됩니다. 그래픽 프로그래밍 개념에 익숙한 개발자를 위한 것입니다.

자세한 내용은 배율 API를 참조하세요.

리소스 컴파일러

Microsoft Windows 리소스 컴파일러는 Windows 기반 애플리케이션에 UI 및 기타 리소스를 추가하는 데 사용되는 애플리케이션 개발 도구입니다. 리소스는 애플리케이션에서 사용하는 실행 불가능한 데이터이며 대화 상자, 메뉴, 문자열, 커서, 아이콘, 비트맵 등과 같은 항목을 포함합니다. 리소스 컴파일러는 Microsoft Visual Studio 및 Windows SDK에 포함되어 있습니다.

자세한 내용은 리소스 컴파일러를 참조하세요.

관리되는 애플리케이션에 대한 사용자 인터페이스 기술

이 섹션에서는 .NET Framework 컨텍스트에서 실행되는 관리되는 Windows 애플리케이션용 UI를 개발하기 위한 Microsoft 기술에 대해 설명합니다. 자세한 내용은 .NET 개발을 참조하세요.

Windows Forms

Windows Forms .NET Framework 기반으로 관리되는 Windows 애플리케이션을 만들기 위한 그래픽 애플리케이션 프로그래밍 인터페이스입니다. Windows Forms 양식은 사용자에게 정보를 표시하고 사용자로부터 입력을 받는 시각적 화면입니다.

폼에 컨트롤을 추가하고 마우스 클릭 또는 키 누르기와 같은 사용자 작업에 대한 응답을 개발하여 Windows Forms 애플리케이션을 빌드합니다. ‘컨트롤’은 데이터를 표시하거나 데이터 입력을 수락하는 고유한 UI 요소입니다. Windows Forms에는 텍스트 상자, 단추, 드롭다운 상자, 라디오 단추 및 웹 페이지를 표시하는 컨트롤 등 폼에 추가할 수 있는 다양한 컨트롤이 포함되어 있습니다. Windows Forms 사용자 지정 컨트롤 만들기도 지원합니다.

자세한 내용은 Windows Forms 참조하세요.

Windows Presentation Foundation

WPF(Windows Presentation Foundation)는 Windows Forms 후속작입니다. WPF는 Windows 기반 클라이언트 애플리케이션 및 브라우저 호스팅 애플리케이션에서 사용자 인터페이스를 빌드하고 렌더링하기 위한 프레젠테이션 시스템입니다. WPF의 핵심은 최신 그래픽 하드웨어를 활용하도록 작성된 해상도 독립적인 벡터 기반 렌더링 엔진입니다. WPF는 XAML(Extensible Application Markup Language), 컨트롤, 데이터 바인딩, 레이아웃, 2차원 및 3차원 그래픽, 애니메이션, 스타일, 템플릿, 문서, 미디어, 텍스트 및 입력 체계를 포함하는 포괄적인 애플리케이션 개발 기능을 사용하여 핵심을 확장합니다.

WPF는 .NET Framework에 포함되어 있으므로 .NET Framework 클래스 라이브러리의 다른 요소를 통합하는 애플리케이션을 빌드할 수 있습니다. WPF는 Windows Vista, Windows 7, Windows Server 2008, Windows Server 2008 R2에서 지원되며 Windows XP SP2(서비스 팩 2) 및 Windows Server 2003에서도 사용할 수 있습니다.

자세한 내용은 Windows Presentation Foundation을 참조하세요.

Silverlight

Microsoft Silverlight는 웹, 데스크톱 및 모바일 디바이스용 리치 미디어 애플리케이션 및 비즈니스 애플리케이션을 만들기 위한 강력한 개발 플랫폼입니다.

.NET Framework 따라 무료 Silverlight 플러그 인은 여러 브라우저, 디바이스 및 운영 체제에서 작동하여 웹에 새로운 상호 작용을 제공합니다. 광범위한 레이아웃 및 스타일 옵션, 강력한 통신 프로토콜, 강력한 데이터 액세스 및 사용자 상호 작용 및 고화질 미디어를 지원하는 Silverlight는 빠르고 원활하며 시각적으로 풍부한 고객 환경을 만드는 데 도움이 됩니다. Silverlight 애플리케이션은 Microsoft 웹 플랫폼, Visual Studio 및 Expression Studio를 사용하여 신속하게 개발할 수 있습니다.

자세한 내용은 Microsoft Silverlight를 참조하세요.

식 혼합 3 + SketchFlow

식 혼합 3 + SketchFlow는 WPF 및 Silverlight 데스크톱 및 웹 애플리케이션에 대한 정교한 사용자 인터페이스를 디자인, 프로토타입화 및 만들기 위한 시각적 도구입니다. 셰이프를 그리고, 단추 및 목록 상자와 같은 컨트롤을 그리고, 애플리케이션의 조각이 마우스 클릭 및 기타 사용자 입력에 응답하도록 하고, 모든 항목을 고유하게 보이도록 스타일링하여 애플리케이션을 빌드합니다.

자세한 내용은 SketchFlow를 사용하여 프로토타입을 참조하세요.

관리되는 애플리케이션에 대한 UI 자동화

UI 자동화 WPF를 지원하는 모든 운영 체제에서 사용할 수 있는 Windows용 접근성 프레임워크입니다.

UI 자동화 데스크톱의 대부분의 UI 요소에 프로그래밍 방식으로 액세스하여 화면 읽기 프로그램과 같은 보조 기술 제품이 최종 사용자에게 UI에 대한 정보를 제공하고 표준 입력 이외의 수단을 통해 UI를 조작할 수 있도록 합니다. 또한 UI 자동화는 자동화된 테스트 스크립트가 UI와 상호 작용할 수 있도록 합니다.

자세한 내용은 관리되는 애플리케이션에 대한 UI 자동화 참조하세요.