다음을 통해 공유


CTaskDialog::AddRadioButton

라디오 단추에 추가 된 CTaskDialog.

void CTaskDialog::AddRadioButton(
   int nRadioButtonID,
   const CString& strCaption,
   BOOL bEnabled = TRUE
);

매개 변수

  • [in] nRadioButtonID
    라디오 버튼의 id 번호입니다.

  • [in] strCaption
    문자열에는 CTaskDialog 라디오 단추 옆에 표시 됩니다.

  • [in] bEnabled
    라디오 단추를 사용할 수 있는지 여부를 나타내는 부울 매개 변수입니다.

설명

라디오 단추에 CTaskDialog 클래스 사용자 로부터 정보를 수집할 수 있습니다.함수 사용 CTaskDialog::GetSelectedRadioButtonID 확인 라디오 단추를 선택 합니다.

CTaskDialog 필요 하지 않습니다는 nRadioButtonID 매개 변수는 각 라디오 단추에 대 한 고유 합니다.그러나 각 라디오 단추에 대 한 고유 식별자를 사용 하지 않는 경우 예기치 않은 동작이 발생할 수 있습니다.

예제

// TODO: Replace the strings below with the appropriate message, 
// main instruction, and dialog title
CString message("This is an important message to the user.");
CString mainInstruction("Important!\nPlease read!");
CString title("Alert Dialog");

CTaskDialog taskDialog(message, mainInstruction, title, 
    TDCBF_YES_BUTTON | TDCBF_NO_BUTTON | TDCBF_CANCEL_BUTTON );

taskDialog.AddRadioButton(201, L"First option");
taskDialog.AddRadioButton(202, L"Second option");
taskDialog.AddRadioButton(203, L"Third option");

taskDialog.DoModal();
int selection = taskDialog.GetSelectedRadioButtonID();

switch(selection)
{
case 201:
    // TODO: Place processing here for the first 
    // radio button.
    break;

case 202:
    // TODO: Place processing here for the second 
    // radio button.
    break;

case 203:
    // TODO: Place processing here for the third 
    // radio button.
    break;

default:
    break;
}

// Remove all the radio buttons so that we can use the same task
// dialog with new radio buttons.
taskDialog.RemoveAllRadioButtons();

taskDialog.AddRadioButton(301, L"New first option");
taskDialog.AddRadioButton(302, L"New second option");
taskDialog.AddRadioButton(303, 
    L"New third option should be disabled");

// Change the default radio button to the second option
taskDialog.SetDefaultRadioButton(302);

// Make sure the third option is disabled.
if (taskDialog.IsRadioButtonEnabled(303))
{
    taskDialog.SetRadioButtonOptions(303, FALSE);
}

taskDialog.DoModal();
selection = taskDialog.GetSelectedRadioButtonID();

switch(taskDialog.GetSelectedRadioButtonID())
{
case 301:
    // TODO: Place processing here for new first 
    // command button control.
    break;

case 302:
    // TODO: Place processing here for new second 
    // command button control.
    break;

case 303:
    // TODO: Place processing here for the new third 
    // command button control.
    break;

default:
    break;
}

// Remove all the radio button controls and add new ones from
// the string table resource.
taskDialog.RemoveAllRadioButtons();
taskDialog.LoadRadioButtons(1001, 1005);

요구 사항

헤더: afxtaskdialog.h

참고 항목

참조

CTaskDialog 클래스

계층 구조 차트

CTaskDialog::GetSelectedRadioButtonID

CTaskDialog::LoadRadioButtons

CTaskDialog::IsRadioButtonEnabled

CTaskDialog::SetRadioButtonOptions

CTaskDialog::ClickRadioButton

CTaskDialog::RemoveAllRadioButtons