다음을 통해 공유


ActiveX MFC 컨트롤: 속성 페이지

ActiveX 컨트롤 사용자는 속성 페이지를 통해 ActiveX 컨트롤 속성을 보거나 변경할 수 있습니다.이러한 속성은 컨트롤 속성 대화 상자를 통해 액세스할 수 있습니다. 이 대화 상자에는 하나 이상의 속성 페이지가 있으며 각 페이지는 컨트롤 속성을 표시하거나 편집할 수 있는 사용자 지정 그래픽 인터페이스로 구성되어 있습니다.

ActiveX 컨트롤 속성 페이지에는 두 가지 방법으로 표시 됩니다.

  • 때 컨트롤의 속성 동사 (OLEIVERB_PROPERTIES)는 컨트롤 호출을 컨트롤의 속성 페이지에 있는 모달 속성 대화 상자를 엽니다.

  • 컨테이너에서 선택된 된 컨트롤의 속성 페이지를 표시 합니다. 고유한 모덜리스 대화 상자를 표시할 수 있습니다.

속성 대화 상자 (다음 그림 참조) 현재 속성 페이지 표시 영역으로 구성 되어, 속성 페이지의 변경 사항이 취소 속성 페이지 대화 상자를 닫거나 ActiveX 컨트롤에 변경 내용을 적용 하는 즉시 같은 일반적인 작업을 수행 하는 단추 컬렉션 사이의 전환에 대 한 감시.

속성 대화 상자

Circ3 속성 대화 상자

이 문서는 ActiveX 컨트롤의 속성 페이지 사용과 관련 된 항목에 설명 합니다.제공합니다.

  • ActiveX 컨트롤의 기본 속성 페이지 구현

  • 속성 페이지에 컨트롤 추가

  • DoDataExchange 함수 사용자 지정

ActiveX 컨트롤의 속성 페이지를 사용 하 여에 대 한 자세한 내용은 다음 문서를 참조 하십시오.

속성 시트를 사용 하 여 MFC 응용 프로그램에서 ActiveX 컨트롤 이외의 다른에 대 한 내용은 속성 시트 (MFC).

기본 속성 페이지 구현

컨트롤 프로젝트를 만들려면 ActiveX 컨트롤 마법사를 사용 하는 경우 파생 컨트롤에 대 한 ActiveX 컨트롤 마법사 기본 속성 페이지 클래스가 제공 COlePropertyPage 클래스.처음에이 속성 페이지는 비어 있지만 모든 대화 상자 컨트롤 또는 컨트롤 집합을 추가 합니다.기본적으로 속성 페이지 클래스는 하나의 속성 페이지 클래스 ActiveX 컨트롤 마법사를 만들기 때문에 (또한 파생 COlePropertyPage) 클래스 뷰를 사용 하 여 만들어야 합니다.이 절차에 대 한 자세한 내용은 MFC 컨트롤을 ActiveX: 다른 사용자 지정 속성 페이지 추가.

속성을 구현할 페이지 (이 경우, 기본값)에서 3 단계 프로세스입니다.

속성 페이지를 구현 하려면

  1. 추가 된 COlePropertyPage-컨트롤 프로젝트에 클래스를 파생 합니다.기본 속성 페이지 클래스 (이 경우) 에서처럼에서 ActiveX 컨트롤 마법사를 사용 하 여 프로젝트를 만든 경우에 이미 있습니다.

  2. 대화 상자 편집기를 사용 하 여 속성 페이지 템플릿에 컨트롤을 추가 합니다.

  3. 사용자 지정의 DoDataExchange 의 함수는 COlePropertyPage-속성 페이지 컨트롤과 ActiveX 컨트롤 간에 값을 교환할 수 있는 클래스를 파생 합니다.

예를 들어 목적으로 다음 절차 ("Sample" 이라는) 단순한 컨트롤을 사용 합니다.샘플 ActiveX 컨트롤 마법사를 사용 하 여 만든 및 스톡 Caption 속성만 포함 되어 있습니다.

속성 페이지에 컨트롤 추가

속성 페이지에 컨트롤을 추가 하려면

  1. 컨트롤 프로젝트가 열린, 리소스 뷰를 엽니다.

  2. 두 번 클릭 하 여 대화 디렉터리 아이콘.

  3. 열려 있는 IDD_PROPPAGE_SAMPLE 대화 상자.

    ActiveX 컨트롤 마법사는 프로젝트의 이름을 대화 ID,이 경우 샘플의 끝에 추가합니다.

  4. 끌어서 선택한 컨트롤 도구 상자 대화 상자 영역에 끌어다 놓습니다.

  5. 이 예는 텍스트 레이블 컨트롤 "캡션:" 및 편집 상자 컨트롤에는 IDC_CAPTION 식별자에는 충분 합니다.

  6. 클릭 저장 도구 모음 변경 내용을 저장 합니다.

사용자 인터페이스를 수정 했으므로 입력란을 Caption 속성을 연결 해야 합니다.이 다음 단원에서 편집 하 여 수행의 CSamplePropPage::DoDataExchange 함수.

DoDataExchange 함수 사용자 지정

속성 페이지 CWnd::DoDataExchange 함수를 사용 하 여 속성 페이지 값을 컨트롤에서 속성의 실제 값을 연결할 수 있습니다.연결을 설정 하려면 페이지 필드를 적절 한 속성은 해당 컨트롤 속성에 매핑해야 합니다.

속성 페이지를 사용 하 여 이러한 매핑을 구현 된 DDP_ 함수.DDP_ 함수는 다음과 같이 작동의 DDX_ 예외적으로 표준 MFC 대화 상자에 사용 되는 함수입니다.멤버 변수에 대 한 참조 외에 DDP_ 함수는 컨트롤 속성의 이름을 사용 합니다.다음 일반 항목인는 DoDataExchange 함수 속성 페이지.

DDP_Text(pDX, IDC_CAPTION, m_caption, _T("Caption"));

이 함수는 속성 페이지의 연결 m_caption 캡션 멤버 변수를 사용 하는 DDP_TEXT 함수.

속성 페이지 컨트롤 삽입 후에 속성 페이지 컨트롤을 연결 해야 IDC_CAPTION, 및 캡션, 실제 컨트롤 속성을 사용 하는 DDP_Text 위에서 설명한 대로 작동 합니다.

속성 페이지 (MFC)확인란, 라디오 단추, 목록 상자 등 다른 대화 상자 컨트롤 형식을 사용할 수 있습니다.아래의 표에 전체 속성 페이지 집합이 나와 DDP_ 함수 및 용도:

속성 페이지 함수

함수 이름

이 함수를 사용 하 여 연결 하려면

DDP_CBIndex

콤보 상자 컨트롤 속성에서 선택한 문자열의 인덱스입니다.

DDP_CBString

콤보 상자 컨트롤 속성에서 선택한 문자열입니다.선택한 문자열 속성의 값과 동일한 문자로 시작할 수 있지만 완전히 일치할 필요는 없습니다.

DDP_CBStringExact

콤보 상자 컨트롤 속성에서 선택한 문자열입니다.선택한 문자열과 속성의 문자열 값을 정확 하 게 일치 해야 합니다.

DDP_Check

확인란 컨트롤 속성을 사용 합니다.

DDP_LBIndex

컨트롤 속성 목록 상자에서 선택한 문자열의 인덱스입니다.

DDP_LBString

컨트롤 속성 목록 상자에서 선택한 문자열입니다.선택한 문자열 속성의 값과 동일한 문자로 시작할 수 있지만 완전히 일치할 필요는 없습니다.

DDP_LBStringExact

컨트롤 속성 목록 상자에서 선택한 문자열입니다.선택한 문자열과 속성의 문자열 값을 정확 하 게 일치 해야 합니다.

DDP_Radio

라디오 단추 컨트롤 속성을 사용 합니다.

DDP_Text

텍스트 컨트롤 속성을 사용 합니다.

참고 항목

참조

COlePropertyPage 클래스

개념

MFC 컨트롤을 ActiveX