Aracılığıyla paylaş


CTaskDialog Sınıfı

İleti kutusu gibi işlev gösteren ancak kullanıcıya ek bilgiler görüntüleyebilen bir açılır iletişim kutusu. ayrıca CTaskDialog kullanıcıdan bilgi toplama işlevselliğini de içerir.

Sözdizimi

class CTaskDialog : public CObject

Üyeler

Oluşturucular

Veri Akışı Adı Açıklama
CTaskDialog::CTaskDialog Bir CTaskDialog nesne oluşturur.

Yöntemler

Veri Akışı Adı Açıklama
CTaskDialog::AddCommandControl komutuna CTaskDialogbir komut düğmesi denetimi ekler.
CTaskDialog::AddRadioButton öğesine CTaskDialogbir radyo düğmesi ekler.
CTaskDialog::ClickCommandControl Program aracılığıyla bir komut düğmesi denetimine veya ortak düğmeye tıklar.
CTaskDialog::ClickRadioButton Program aracılığıyla bir radyo düğmesine tıklar.
CTaskDialog::D oModal öğesini CTaskDialoggörüntüler.
CTaskDialog::GetCommonButtonCount Kullanılabilir ortak düğmelerin sayısını alır.
CTaskDialog::GetCommonButtonFlag Standart bir Windows düğmesini sınıfla ilişkilendirilmiş ortak düğme türüne CTaskDialog dönüştürür.
CTaskDialog::GetCommonButtonId sınıfıyla CTaskDialog ilişkilendirilmiş ortak düğme türlerinden birini standart bir Windows düğmesine dönüştürür.
CTaskDialog::GetOptions Bunun CTaskDialogiçin seçenek bayraklarını döndürür.
CTaskDialog::GetSelectedCommandControlID Seçili komut düğmesi denetimini döndürür.
CTaskDialog::GetSelectedRadioButtonID Seçili radyo düğmesini döndürür.
CTaskDialog::GetVerificationCheckboxState Doğrulama onay kutusunun durumunu alır.
CTaskDialog::IsCommandControlEnabled Bir komut düğmesi denetiminin mi yoksa ortak düğmenin mi etkinleştirildiğini belirler.
CTaskDialog::IsRadioButtonEnabled Radyo düğmesinin etkinleştirilip etkinleştirilmediğini belirler.
CTaskDialog::IsSupported Uygulamayı çalıştıran bilgisayarın uygulamasını destekleyip desteklemediğini CTaskDialogbelirler.
CTaskDialog::LoadCommandControls Dize tablosundaki verileri kullanarak komut düğmesi denetimleri ekler.
CTaskDialog::LoadRadioButtons Dize tablosundaki verileri kullanarak radyo düğmeleri ekler.
CTaskDialog::NavigateTo Odağı başka bir CTaskDialogöğesine aktarır.
CTaskDialog::OnCommandControlClick Kullanıcı bir komut düğmesi denetimine tıkladığında çerçeve bu yöntemi çağırır.
CTaskDialog::OnCreate Çerçeve, öğesini oluşturdıktan CTaskDialogsonra bu yöntemi çağırır.
CTaskDialog::OnDestroy Çerçeve, yok etmeden CTaskDialoghemen önce bu yöntemi çağırır.
CTaskDialog::OnExpandButtonClick Kullanıcı genişletme düğmesine tıkladığında çerçeve bu yöntemi çağırır.
CTaskDialog::OnHelp Kullanıcı yardım istediğinde çerçeve bu yöntemi çağırır.
CTaskDialog::OnHyperlinkClick Kullanıcı bir köprüye tıkladığında çerçeve bu yöntemi çağırır.
CTaskDialog::OnInit başlatıldığında çerçeve bu yöntemi CTaskDialog çağırır.
CTaskDialog::OnNavigatePage Kullanıcı üzerindeki denetimlerle CTaskDialogilgili odağı hareket ettiğinde çerçeve bu yöntemi çağırır.
CTaskDialog::OnRadioButtonClick Kullanıcı bir radyo düğmesi denetimi seçtiğinde çerçeve bu yöntemi çağırır.
CTaskDialog::OnTimer Zamanlayıcının süresi dolduğunda çerçeve bu yöntemi çağırır.
CTaskDialog::OnVerificationCheckboxClick Kullanıcı doğrulama onay kutusuna tıkladığında çerçeve bu yöntemi çağırır.
CTaskDialog::RemoveAllCommandControls tüm komut denetimlerini içinden CTaskDialogkaldırır.
CTaskDialog::RemoveAllRadioButtons 'den CTaskDialogtüm radyo düğmelerini kaldırır.
CTaskDialog::SetCommandControlOptions üzerindeki CTaskDialogbir komut düğmesi denetimini güncelleştirir.
CTaskDialog::SetCommonButtonOptions Ortak düğmelerin bir alt kümesini etkinleştirilecek şekilde güncelleştirir ve UAC yükseltmesi gerektirir.
CTaskDialog::SetCommonButtons öğesine ortak düğmeler CTaskDialogekler.
CTaskDialog::SetContent içeriğini CTaskDialoggüncelleştirir.
CTaskDialog::SetDefaultCommandControl Varsayılan komut düğmesi denetimini belirtir.
CTaskDialog::SetDefaultRadioButton Varsayılan radyo düğmesini belirtir.
CTaskDialog::SetDialogWidth öğesinin genişliğini CTaskDialogayarlar.
CTaskDialog::SetExpansionArea öğesinin genişletme alanını CTaskDialoggüncelleştirir.
CTaskDialog::SetFooterIcon için CTaskDialogalt bilgi simgesini güncelleştirir.
CTaskDialog::SetFooterText alt bilgisinde CTaskDialogbulunan metni güncelleştirir.
CTaskDialog::SetMainIcon öğesinin ana simgesini CTaskDialoggüncelleştirir.
CTaskDialog::SetMainInstruction öğesinin ana yönergesini CTaskDialoggüncelleştirir.
CTaskDialog::SetOptions için seçenekleri yapılandırılır CTaskDialog.
CTaskDialog::SetProgressBarMarquee için bir kayan CTaskDialog yazı çubuğu yapılandırıp iletişim kutusuna ekler.
CTaskDialog::SetProgressBarPosition İlerleme çubuğunun konumunu ayarlar.
CTaskDialog::SetProgressBarRange İlerleme çubuğunun aralığını ayarlar.
CTaskDialog::SetProgressBarState İlerleme çubuğunun durumunu ayarlar ve üzerinde CTaskDialoggörüntüler.
CTaskDialog::SetRadioButtonOptions Radyo düğmesini etkinleştirir veya devre dışı bırakır.
CTaskDialog::SetVerificationCheckbox Doğrulama onay kutusunun işaretli durumunu ayarlar.
CTaskDialog::SetVerificationCheckboxText Doğrulama onay kutusunun sağ tarafındaki metni ayarlar.
CTaskDialog::SetWindowTitle öğesinin CTaskDialogbaşlığını ayarlar.
CTaskDialog::ShowDialog oluşturur CTaskDialogve görüntüler.
CTaskDialog::TaskDialogCallback Çerçeve, çeşitli Windows iletilerine yanıt olarak bunu çağırır.

Veri Üyeleri

Veri Akışı Adı Açıklama
m_aButtons komut düğmesi dizisi için denetimler CTaskDialog.
m_aRadioButtons için radyo düğmesi denetimleri CTaskDialogdizisi.
m_bVerified TRUE doğrulama onay kutusunun işaretli olduğunu gösterir; FALSE olmadığını gösterir.
m_footerIcon alt bilgisindeki CTaskDialogsimge.
m_hWnd penceresinin CTaskDialogtutamacı.
m_mainIcon öğesinin CTaskDialogana simgesi.
m_nButtonDisabled Ortak düğmelerden hangilerinin devre dışı bırakıldığını gösteren maske.
m_nButtonElevation Ortak düğmelerden hangilerinin UAC yükseltmesi gerektirdiğini gösteren bir maske.
m_nButtonId Seçili komut düğmesi denetiminin kimliği.
m_nCommonButton üzerinde CTaskDialoghangi ortak düğmelerin görüntülendiğini gösteren bir maske.
m_nDefaultCommandControl görüntülendiğinde seçilen komut düğmesi denetiminin CTaskDialog kimliği.
m_nDefaultRadioButton görüntülendiğinde seçilen radyo düğmesi denetiminin CTaskDialog kimliği.
m_nFlags için CTaskDialogseçenekleri gösteren bir maske.
m_nProgressPos İlerleme çubuğunun geçerli konumu. Bu değer ile m_nProgressRangeMaxarasında m_nProgressRangeMin olmalıdır.
m_nProgressRangeMax İlerleme çubuğu için en büyük değer.
m_nProgressRangeMin İlerleme çubuğu için en düşük değer.
m_nProgressState İlerleme çubuğunun durumu. Daha fazla bilgi için bkz . CTaskDialog::SetProgressBarState.
m_nRadioId Seçili radyo düğmesi denetiminin kimliği.
m_nWidth piksel cinsinden genişliği CTaskDialog .
m_strCollapse Genişletilmiş bilgiler gizlendiğinde genişletme kutusunun sağındaki dizesi CTaskDialog görüntülenir.
m_strContent öğesinin CTaskDialogiçerik dizesi.
m_strExpand Genişletilmiş bilgiler görüntülendiğinde genişletme kutusunun sağındaki dizesi CTaskDialog görüntülenir.
m_strFooter alt bilgisi CTaskDialog.
m_strInformation için CTaskDialoggenişletilmiş bilgiler.
m_strMainInstruction öğesinin ana yönergesi CTaskDialog.
m_strTitle öğesinin CTaskDialogbaşlığı.
m_strVerification Doğrulama onay kutusunun sağ kısmında görüntülenen dize CTaskDialog .

Açıklamalar

sınıfı standart CTaskDialog Windows ileti kutusunun yerini alır ve kullanıcıdan bilgi toplamak için yeni denetimler gibi ek işlevlere sahiptir. Bu sınıf, Visual Studio 2010 ve sonraki sürümlerde MFC kitaplığındadır. CTaskDialog, Windows Vista ile başlayarak kullanılabilir. Windows'un önceki sürümleri nesneyi görüntüleyemiyor CTaskDialog . Geçerli kullanıcının görev iletişim kutusunu görüntüleyip görüntüleyemeyeceğini çalışma zamanında belirlemek için kullanın CTaskDialog::IsSupported . Standart Windows ileti kutusu hala desteklenmektedir.

CTaskDialog yalnızca Uygulamanızı Unicode kitaplığını kullanarak derlediğinizde kullanılabilir.

iki CTaskDialog farklı oluşturucuya sahiptir. Bir oluşturucu, iki komut düğmesi ve en fazla altı normal düğme denetimi belirtmenizi sağlar. oluşturduktan sonra CTaskDialogdaha fazla komut düğmesi ekleyebilirsiniz. İkinci oluşturucu herhangi bir komut düğmesini desteklemez, ancak sınırsız sayıda normal düğme denetimi ekleyebilirsiniz. Oluşturucular hakkında daha fazla bilgi için bkz . CTaskDialog::CTaskDialog.

Aşağıdaki görüntüde, bazı denetimlerin konumunu gösteren bir örnek CTaskDialog gösterilmektedir.

CTaskDialog örneği.
CTaskDialog Örneği

Gereksinimler

Gerekli en düşük işletim sistemi: Windows Vista

Üst bilgi: afxtaskdialog.h

CTaskDialog::AddCommandControl

öğesine yeni bir komut düğmesi denetimi CTaskDialogekler.

void AddCommandControl(
    int nCommandControlID,
    const CString& strCaption,
    BOOL bEnabled = TRUE,
    BOOL bRequiresElevation = FALSE);

Parametreler

nCommandControlID
[in] Komut denetimi kimlik numarası.

strCaption
[in] öğesinin CTaskDialog kullanıcıya görüntülediği dize. Komutun amacını açıklamak için bu dizeyi kullanın.

bEnabled
[in] Yeni düğmenin etkin mi yoksa devre dışı mı olduğunu gösteren boole parametresi.

bRequiresElevation
[in] Bir komutun yükseltilmesi gerekip gerekmediğini belirten boole parametresi.

Açıklamalar

sınırsız CTaskDialog Class sayıda komut düğmesi denetimi görüntüleyebilir. Ancak, bir CTaskDialog komut düğmesi denetimi görüntülerse en fazla altı düğme görüntüleyebilir. CTaskDialog Komut düğmesi denetimi yoksa sınırsız sayıda düğme görüntüleyebilir.

Kullanıcı bir komut düğmesi denetimi seçtiğinde kapatıldığında CTaskDialog . Uygulamanız CTaskDialog::D oModal kullanarak iletişim kutusunu görüntülüyorsa, DoModal seçili komut düğmesi denetiminin nCommandControlID değerini döndürür.

Örnek

// 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.AddCommandControl(201, L"First command button control");
taskDialog.AddCommandControl(202, L"Second command button control");
taskDialog.AddCommandControl(203, L"Third command button control");

// Show the CTaskDialog and remember how the user closed it.
int selection = taskDialog.DoModal();

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

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

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

default:
   break;
}

// Remove all the command controls so that we can use the same task
// dialog with new command button controls.
taskDialog.RemoveAllCommandControls();

taskDialog.AddCommandControl(301,
                             L"New first command button control");
taskDialog.AddCommandControl(302,
                             L"New second command button control should require elevation",
                             TRUE, TRUE);
taskDialog.AddCommandControl(303,
                             L"New third command button control should be disabled");

// Change the default command button control
taskDialog.SetDefaultCommandControl(302);

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

taskDialog.DoModal();

switch (taskDialog.GetSelectedCommandControlID())
{
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 command button controls and add new ones from
// the string table resource.
taskDialog.RemoveAllCommandControls();
taskDialog.LoadCommandControls(1001, 1005);

CTaskDialog::AddRadioButton

öğesine CTaskDialogbir radyo düğmesi ekler.

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

Parametreler

nRadioButtonID
[in] Radyo düğmesinin kimlik numarası.

strCaption
[in] Radyo düğmesinin CTaskDialog yanında görüntülenen dize.

bEnabled
[in] Radyo düğmesinin etkinleştirilip etkinleştirilmediğini gösteren boole parametresi.

Açıklamalar

CTaskDialog Sınıfının radyo düğmeleri, kullanıcıdan bilgi toplamanızı sağlar. Hangi radyo düğmesinin seçili olduğunu belirlemek için CTaskDialog::GetSelectedRadioButtonID işlevini kullanın.

, CTaskDialog nRadioButtonID parametrelerinin her radyo düğmesi için benzersiz olmasını gerektirmez. Ancak, her radyo düğmesi için ayrı bir tanımlayıcı kullanmazsanız beklenmeyen bir davranışla karşılaşabilirsiniz.

Örnek

// 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);

CTaskDialog::ClickCommandControl

Program aracılığıyla bir komut düğmesi denetimine veya ortak düğmeye tıklar.

protected:
void ClickCommandControl(int nCommandControlID) const;

Parametreler

nCommandControlID
[in] Tıklatacak denetimin komut kimliği.

Açıklamalar

Bu yöntem windows ileti TDM_CLICK_BUTTON oluşturur.

CTaskDialog::ClickRadioButton

Program aracılığıyla bir radyo düğmesine tıklar.

protected:
void ClickRadioButton(int nRadioButtonID) const;

Parametreler

nRadioButtonID
[in] Tıklayacak radyo düğmesinin kimliği.

Açıklamalar

Bu yöntem windows ileti TDM_CLICK_RADIO_BUTTON oluşturur.

CTaskDialog::CTaskDialog

CTaskDialog Sınıfının bir örneğini oluşturur.

CTaskDialog(
    const CString& strContent,
    const CString& strMainInstruction,
    const CString& strTitle,
    int nCommonButtons = TDCBF_OK_BUTTON | TDCBF_CANCEL_BUTTON,
    int nTaskDialogOptions = TDF_ENABLE_HYPERLINKS | TDF_USE_COMMAND_LINKS,
    const CString& strFooter = _T(""));

CTaskDialog(
    const CString& strContent,
    const CString& strMainInstruction,
    const CString& strTitle,
    int nIDCommandControlsFirst,
    int nIDCommandControlsLast,
    int nCommonButtons,
    int nTaskDialogOptions = TDF_ENABLE_HYPERLINKS | TDF_USE_COMMAND_LINKS,
    const CString& strFooter = _T(""));

Parametreler

strContent
[in] öğesinin içeriği CTaskDialogiçin kullanılacak dize.

strMainInstruction
[in] öğesinin ana yönergesi CTaskDialog.

strTitle
[in] öğesinin CTaskDialogbaşlığı.

nCommonButtons
[in] öğesine eklenecek ortak düğmelerin CTaskDialogmaskesi.

nTaskDialogOptions
[in] için CTaskDialogkullanılacak seçenekler kümesi.

strFooter
[in] Alt bilgi olarak kullanılacak dize.

nIDCommandControlsFirst
[in] İlk komutun dize kimliği.

nIDCommandControlsLast
[in] Son komutun dize kimliği.

Açıklamalar

Uygulamanıza eklemenin CTaskDialog iki yolu vardır. İlk yol, oluşturuculardan birini kullanarak CTaskDialog::D oModal kullanarak bir CTaskDialog oluşturmak ve görüntülemektir. İkinci yol, açıkça nesne oluşturmadan CTaskDialog görüntülemenizi CTaskDialog sağlayan CTaskDialog::ShowDialog statik işlevini kullanmaktır.

İkinci oluşturucu, uygulamanızın kaynak dosyasındaki verileri kullanarak komut düğmesi denetimleri oluşturur. Kaynak dosyasındaki dize tablosunda ilişkili dize kimliklerine sahip çeşitli dizeler vardır. Bu yöntem, nIDCommandControlsFirst ile nCommandControlsLast (dahil) arasında dize tablosundaki her geçerli girdi için bir komut düğmesi denetimi ekler. Bu komut düğmesi denetimleri için, dize tablosundaki dize denetimin resim yazısıdır ve dize kimliği denetimin kimliğidir.

Geçerli seçeneklerin listesi için bkz . CTaskDialog::SetOptions .

Örnek

// 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);

// Setting new information to be able to reuse the dialog resource
taskDialog.SetWindowTitle(L"New title for the task dialog");
taskDialog.SetContent(L"New message to show the user.");
taskDialog.SetMainInstruction(L"Even more important!");
taskDialog.SetMainIcon(TD_ERROR_ICON);
taskDialog.SetDialogWidth(300);

// Add a footer
taskDialog.SetFooterText(L"Footer information for the dialog.");
taskDialog.SetFooterIcon(TD_INFORMATION_ICON);

// Add expansion information
taskDialog.SetExpansionArea(L"Additional information\non two lines.",
                            L"Click here for more information.",
                            L"Click here to hide the extra information.");

// Change the options to show the expanded information by default.
// It is necessary to retrieve the current options first.
int options = taskDialog.GetOptions();
options |= TDF_EXPANDED_BY_DEFAULT;
taskDialog.SetOptions(options);

taskDialog.DoModal();

CTaskDialog::D oModal

CTaskDialog öğesini gösterir ve kalıcı hale getirir.

INT_PTR DoModal (HWND hParent = ::GetActiveWindow());

Parametreler

hParent
[in] için CTaskDialogüst pencere.

Dönüş Değeri

Kullanıcı tarafından yapılan seçime karşılık gelen bir tamsayı.

Açıklamalar

CTaskDialog'un bu örneğini görüntüler. Uygulama daha sonra kullanıcının iletişim kutusunu kapatmasını bekler.

kullanıcı CTaskDialog ortak bir düğmeyi, komut bağlantısı denetimini seçtiğinde veya kapattığında CTaskDialogkapanır. Dönüş değeri, kullanıcının iletişim kutusunu nasıl kapattığını gösteren tanımlayıcıdır.

Örnek

// 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);

// Setting new information to be able to reuse the dialog resource
taskDialog.SetWindowTitle(L"New title for the task dialog");
taskDialog.SetContent(L"New message to show the user.");
taskDialog.SetMainInstruction(L"Even more important!");
taskDialog.SetMainIcon(TD_ERROR_ICON);
taskDialog.SetDialogWidth(300);

// Add a footer
taskDialog.SetFooterText(L"Footer information for the dialog.");
taskDialog.SetFooterIcon(TD_INFORMATION_ICON);

// Add expansion information
taskDialog.SetExpansionArea(L"Additional information\non two lines.",
                            L"Click here for more information.",
                            L"Click here to hide the extra information.");

// Change the options to show the expanded information by default.
// It is necessary to retrieve the current options first.
int options = taskDialog.GetOptions();
options |= TDF_EXPANDED_BY_DEFAULT;
taskDialog.SetOptions(options);

taskDialog.DoModal();

CTaskDialog::GetCommonButtonCount

Ortak düğmelerin sayısını alır.

int GetCommonButtonCount() const;

Dönüş Değeri

Kullanılabilir ortak düğmelerin sayısı.

Açıklamalar

Yaygın düğmeler, CTaskDialog::CTaskDialog'a sağladığınız varsayılan düğmelerdir. CTaskDialog Sınıfı, iletişim kutusunun alt kısmındaki düğmeleri görüntüler.

Numaralandırılmış düğme listesi CommCtrl.h'de sağlanır.

CTaskDialog::GetCommonButtonFlag

Standart bir Windows düğmesini CTaskDialog Sınıfı ile ilişkilendirilmiş ortak düğme türüne dönüştürür.

int GetCommonButtonFlag(int nButtonId) const;

Parametreler

nButtonId
[in] Standart Windows düğmesi değeri.

Dönüş Değeri

İlgili CTaskDialog ortak düğmenin değeri. Karşılık gelen ortak düğme yoksa, bu yöntem 0 döndürür.

CTaskDialog::GetCommonButtonId

CTaskDialog Sınıfı ile ilişkilendirilmiş ortak düğme türlerinden birini standart bir Windows düğmesine dönüştürür.

int GetCommonButtonId(int nFlag);

Parametreler

nFlag
[in] Sınıfıyla CTaskDialog ilişkilendirilmiş ortak düğme türü.

Dönüş Değeri

İlgili standart Windows düğmesinin değeri. Karşılık gelen Windows düğmesi yoksa, yöntem 0 döndürür.

CTaskDialog::GetOptions

Bunun CTaskDialogiçin seçenek bayraklarını döndürür.

int GetOptions() const;

Dönüş Değeri

için CTaskDialogbayraklar.

Açıklamalar

CTaskDialog Sınıfı'nın kullanabileceği seçenekler hakkında daha fazla bilgi için bkz. CTaskDialog::SetOptions.

Örnek

// 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);

// Setting new information to be able to reuse the dialog resource
taskDialog.SetWindowTitle(L"New title for the task dialog");
taskDialog.SetContent(L"New message to show the user.");
taskDialog.SetMainInstruction(L"Even more important!");
taskDialog.SetMainIcon(TD_ERROR_ICON);
taskDialog.SetDialogWidth(300);

// Add a footer
taskDialog.SetFooterText(L"Footer information for the dialog.");
taskDialog.SetFooterIcon(TD_INFORMATION_ICON);

// Add expansion information
taskDialog.SetExpansionArea(L"Additional information\non two lines.",
                            L"Click here for more information.",
                            L"Click here to hide the extra information.");

// Change the options to show the expanded information by default.
// It is necessary to retrieve the current options first.
int options = taskDialog.GetOptions();
options |= TDF_EXPANDED_BY_DEFAULT;
taskDialog.SetOptions(options);

taskDialog.DoModal();

CTaskDialog::GetSelectedCommandControlID

Seçili komut düğmesi denetimini döndürür.

int GetSelectedCommandControlID() const;

Dönüş Değeri

Seçili durumdaki komut düğmesi denetiminin kimliği.

Açıklamalar

Kullanıcının seçtiği komut düğmesinin kimliğini almak için bu yöntemi kullanmanız gerekmez. Bu kimlik CTaskDialog::D oModal veya CTaskDialog::ShowDialog tarafından döndürülür.

Örnek

// 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.AddCommandControl(201, L"First command button control");
taskDialog.AddCommandControl(202, L"Second command button control");
taskDialog.AddCommandControl(203, L"Third command button control");

// Show the CTaskDialog and remember how the user closed it.
int selection = taskDialog.DoModal();

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

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

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

default:
   break;
}

// Remove all the command controls so that we can use the same task
// dialog with new command button controls.
taskDialog.RemoveAllCommandControls();

taskDialog.AddCommandControl(301,
                             L"New first command button control");
taskDialog.AddCommandControl(302,
                             L"New second command button control should require elevation",
                             TRUE, TRUE);
taskDialog.AddCommandControl(303,
                             L"New third command button control should be disabled");

// Change the default command button control
taskDialog.SetDefaultCommandControl(302);

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

taskDialog.DoModal();

switch (taskDialog.GetSelectedCommandControlID())
{
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 command button controls and add new ones from
// the string table resource.
taskDialog.RemoveAllCommandControls();
taskDialog.LoadCommandControls(1001, 1005);

CTaskDialog::GetSelectedRadioButtonID

Seçili radyo düğmesini döndürür.

int GetSelectedRadioButtonID() const;

Dönüş Değeri

Seçili radyo düğmesinin kimliği.

Açıklamalar

Kullanıcı seçili radyo düğmesini almak için iletişim kutusunu kapattıktan sonra bu yöntemi kullanabilirsiniz.

Örnek

// 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);

CTaskDialog::GetVerificationCheckboxState

Doğrulama onay kutusunun durumunu alır.

BOOL GetVerificationCheckboxState() const;

Dönüş Değeri

Onay kutusu işaretliyse DOĞRU, işaretlenmediyse YANLIŞ.

Örnek

// 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);

// Add the verification checkbox and set the default state.
taskDialog.SetVerificationCheckboxText(L"Remember your selection.");
taskDialog.SetVerificationCheckbox(false);

taskDialog.DoModal();

if (taskDialog.GetVerificationCheckboxState())
{
   // TODO: Write settings of the task dialog to the registry
}

CTaskDialog::IsCommandControlEnabled

Bir komut düğmesi denetiminin mi yoksa düğmenin mi etkin olduğunu belirler.

BOOL IsCommandControlEnabled(int nCommandControlID) const;

Parametreler

nCommandControlID
[in] Test etmek için komut düğmesi denetiminin veya düğmesinin kimliği.

Dönüş Değeri

Denetim etkinse TRUE, etkin değilse YANLIŞ.

Açıklamalar

Bu yöntemi, hem komut düğmesi denetimlerinin hem de Sınıf* ortak düğmelerinin kullanılabilirliğini CTaskDialog belirlemek için kullanabilirsiniz.

nCommandControlID ortak CTaskDialog bir düğme veya komut düğmesi denetimi için geçerli bir tanımlayıcı değilse, bu yöntem bir özel durum oluşturur.

Örnek

// 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.AddCommandControl(201, L"First command button control");
taskDialog.AddCommandControl(202, L"Second command button control");
taskDialog.AddCommandControl(203, L"Third command button control");

// Show the CTaskDialog and remember how the user closed it.
int selection = taskDialog.DoModal();

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

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

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

default:
   break;
}

// Remove all the command controls so that we can use the same task
// dialog with new command button controls.
taskDialog.RemoveAllCommandControls();

taskDialog.AddCommandControl(301,
                             L"New first command button control");
taskDialog.AddCommandControl(302,
                             L"New second command button control should require elevation",
                             TRUE, TRUE);
taskDialog.AddCommandControl(303,
                             L"New third command button control should be disabled");

// Change the default command button control
taskDialog.SetDefaultCommandControl(302);

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

taskDialog.DoModal();

switch (taskDialog.GetSelectedCommandControlID())
{
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 command button controls and add new ones from
// the string table resource.
taskDialog.RemoveAllCommandControls();
taskDialog.LoadCommandControls(1001, 1005);

CTaskDialog::IsRadioButtonEnabled

Radyo düğmesinin etkinleştirilip etkinleştirilmediğini belirler.

BOOL IsRadioButtonEnabled(int nRadioButtonID) const;

Parametreler

nRadioButtonID
[in] Test etmek için radyo düğmesinin kimliği.

Dönüş Değeri

Radyo düğmesi etkinse TRUE, etkin değilse YANLIŞ.

Açıklamalar

nRadioButtonID bir radyo düğmesi için geçerli bir tanımlayıcı değilse, bu yöntem bir özel durum oluşturur.

Örnek

// 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);

CTaskDialog::IsSupported

Uygulamayı çalıştıran bilgisayarın uygulamasını destekleyip desteklemediğini CTaskDialogbelirler.

static BOOL IsSupported();

Dönüş Değeri

Bilgisayar uygulamasını destekliyorsa CTaskDialogTRUE; FALSE aksi takdirde.

Açıklamalar

Çalışma zamanında uygulamanızı çalıştıran bilgisayarın sınıfı desteklenip desteklemediğini CTaskDialog belirlemek için bu işlevi kullanın. Bilgisayar'ı desteklemiyorsa CTaskDialog, kullanıcıya bilgi iletmek için başka bir yöntem sağlamanız gerekir. Sınıfını desteklemeyen CTaskDialog bir bilgisayarda kullanmaya CTaskDialog çalışırsa uygulamanız kilitlenir.

Örnek

// TODO: Replace the string below with the actual message to the user
CString message("Important information to the user");
// TODO: Replace the string below with the title of this project
CString title("Project Title");

CString emptyString;

if (CTaskDialog::IsSupported())
{
   CTaskDialog::ShowDialog(message, emptyString, title, 0, 0,
                           TDCBF_OK_BUTTON);
}
else
{
   AfxMessageBox(message);
}

CTaskDialog::LoadCommandControls

Dize tablosundaki verileri kullanarak komut düğmesi denetimleri ekler.

void LoadCommandControls(
    int nIDCommandControlsFirst,
    int nIDCommandControlsLast);

Parametreler

nIDCommandControlsFirst
[in] İlk komutun dize kimliği.

nIDCommandControlsLast
[in] Son komutun dize kimliği.

Açıklamalar

Bu yöntem, uygulamanızın kaynak dosyasındaki verileri kullanarak komut düğmesi denetimleri oluşturur. Kaynak dosyasındaki dize tablosunda ilişkili dize kimliklerine sahip çeşitli dizeler vardır. Bu yöntem kullanılarak eklenen yeni komut düğmesi denetimleri, denetimin resim yazısının dizesini ve denetimin kimliğinin dize kimliğini kullanır. Seçilen dize aralığı nIDCommandControlsFirst ve nCommandControlsLast (dahil) tarafından sağlanır. Aralıkta boş bir girdi varsa, yöntemi bu giriş için bir komut düğmesi denetimi eklemez.

Varsayılan olarak, yeni komut düğmesi denetimleri etkinleştirilir ve yükseltme gerektirmez.

Örnek

// 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.AddCommandControl(201, L"First command button control");
taskDialog.AddCommandControl(202, L"Second command button control");
taskDialog.AddCommandControl(203, L"Third command button control");

// Show the CTaskDialog and remember how the user closed it.
int selection = taskDialog.DoModal();

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

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

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

default:
   break;
}

// Remove all the command controls so that we can use the same task
// dialog with new command button controls.
taskDialog.RemoveAllCommandControls();

taskDialog.AddCommandControl(301,
                             L"New first command button control");
taskDialog.AddCommandControl(302,
                             L"New second command button control should require elevation",
                             TRUE, TRUE);
taskDialog.AddCommandControl(303,
                             L"New third command button control should be disabled");

// Change the default command button control
taskDialog.SetDefaultCommandControl(302);

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

taskDialog.DoModal();

switch (taskDialog.GetSelectedCommandControlID())
{
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 command button controls and add new ones from
// the string table resource.
taskDialog.RemoveAllCommandControls();
taskDialog.LoadCommandControls(1001, 1005);

CTaskDialog::LoadRadioButtons

Dize tablosundaki verileri kullanarak radyo düğmesi denetimleri ekler.

void LoadRadioButtons(
    int nIDRadioButtonsFirst,
    int nIDRadioButtonsLast);

Parametreler

nIDRadioButtonsFirst
[in] İlk radyo düğmesinin dize kimliği.

nIDRadioButtonsLast
[in] Son radyo düğmesinin dize kimliği.

Açıklamalar

Bu yöntem, uygulamanızın kaynak dosyasındaki verileri kullanarak radyo düğmeleri oluşturur. Kaynak dosyasındaki dize tablosunda ilişkili dize kimliklerine sahip çeşitli dizeler vardır. Bu yöntem kullanılarak eklenen yeni radyo düğmeleri, radyo düğmesinin resim yazısının dizesini ve radyo düğmesinin kimliğinin dize kimliğini kullanır. Seçilen dize aralığı nIDRadioButtonsFirst ve nRadioButtonsLast (dahil) tarafından sağlanır. Aralıkta boş bir girdi varsa, yöntem bu giriş için radyo düğmesi eklemez.

Varsayılan olarak, yeni radyo düğmeleri etkinleştirilir.

Örnek

// 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);

Odağı başka bir CTaskDialogöğesine aktarır.

protected:
void NavigateTo(CTaskDialog& oTaskDialog) const;

Parametreler

oTaskDialog
[in] CTaskDialog Odağı alan.

Açıklamalar

Bu yöntem, oTaskDialog görüntülendiğinde geçerli CTaskDialog değeri gizler. oTaskDialog geçerli ile aynı konumda CTaskDialoggörüntülenir.

CTaskDialog::OnCommandControlClick

Kullanıcı bir komut düğmesi denetimine tıkladığında çerçeve bu yöntemi çağırır.

virtual HRESULT OnCommandControlClick(int nCommandControlID);

Parametreler

nCommandControlID
[in] Kullanıcının seçtiği komut düğmesinin kimliği denetimi.

Dönüş Değeri

Varsayılan uygulama S_OK döndürür.

Açıklamalar

Özel davranış uygulamak için türetilmiş bir sınıfta bu yöntemi geçersiz kılın.

CTaskDialog::OnCreate

Çerçeve, öğesini oluşturdıktan CTaskDialogsonra bu yöntemi çağırır.

virtual HRESULT OnCreate();

Dönüş Değeri

Varsayılan uygulama S_OK döndürür.

Açıklamalar

Özel davranış uygulamak için türetilmiş bir sınıfta bu yöntemi geçersiz kılın.

CTaskDialog::OnDestroy

Çerçeve, yok etmeden CTaskDialoghemen önce bu yöntemi çağırır.

virtual HRESULT OnDestroy();

Dönüş Değeri

Varsayılan uygulama S_OK döndürür.

Açıklamalar

Özel davranış uygulamak için türetilmiş bir sınıfta bu yöntemi geçersiz kılın.

CTaskDialog::OnExpandButtonClick

Kullanıcı genişletme düğmesine tıkladığında çerçeve bu yöntemi çağırır.

virtual HRESULT OnExpandButtonClicked(BOOL bExpanded);

Parametreler

bExpanded
[in] Sıfır olmayan bir değer, ek bilgilerin görüntülendiğini gösterir; 0, ek bilgilerin gizlendiğini gösterir.

Dönüş Değeri

Varsayılan uygulama S_OK döndürür.

Açıklamalar

Özel davranış uygulamak için türetilmiş bir sınıfta bu yöntemi geçersiz kılın.

CTaskDialog::OnHelp

Kullanıcı yardım istediğinde çerçeve bu yöntemi çağırır.

virtual HRESULT OnHelp();

Dönüş Değeri

Varsayılan uygulama S_OK döndürür.

Açıklamalar

Özel davranış uygulamak için türetilmiş bir sınıfta bu yöntemi geçersiz kılın.

CTaskDialog::OnHyperlinkClick

Kullanıcı bir köprüye tıkladığında çerçeve bu yöntemi çağırır.

virtual HRESULT OnHyperlinkClick(const CString& strHref);

Parametreler

strHref
[in] Köprüyü temsil eden dize.

Dönüş Değeri

Varsayılan uygulama S_OK döndürür.

Açıklamalar

Bu yöntem, S_OK döndürmeden önce ShellExecute'i çağırır.

Özel davranış uygulamak için türetilmiş bir sınıfta bu yöntemi geçersiz kılın.

CTaskDialog::OnInit

başlatıldığında çerçeve bu yöntemi CTaskDialog çağırır.

virtual HRESULT OnInit();

Dönüş Değeri

Varsayılan uygulama S_OK döndürür.

Açıklamalar

Özel davranış uygulamak için türetilmiş bir sınıfta bu yöntemi geçersiz kılın.

CTaskDialog::OnNavigatePage

Çerçeve, CTaskDialog::NavigateTo yöntemine yanıt olarak bu yöntemi çağırır.

virtual HRESULT OnNavigatePage();

Dönüş Değeri

Varsayılan uygulama S_OK döndürür.

Açıklamalar

Özel davranış uygulamak için türetilmiş bir sınıfta bu yöntemi geçersiz kılın.

CTaskDialog::OnRadioButtonClick

Kullanıcı bir radyo düğmesi denetimi seçtiğinde çerçeve bu yöntemi çağırır.

virtual HRESULT OnRadioButtonClick(int nRadioButtonID);

Parametreler

nRadioButtonID
[in] Kullanıcının tıklamış olduğu radyo düğmesi denetiminin kimliği.

Dönüş Değeri

Varsayılan uygulama S_OK döndürür.

Açıklamalar

Özel davranış uygulamak için türetilmiş bir sınıfta bu yöntemi geçersiz kılın.

CTaskDialog::OnTimer

Zamanlayıcının süresi dolduğunda çerçeve bu yöntemi çağırır.

virtual HRESULT OnTimer(long lTime);

Parametreler

lTime
[in] Oluşturulduktan veya zamanlayıcı sıfırlandıktan sonra CTaskDialog milisaniye cinsinden süre.

Dönüş Değeri

Varsayılan uygulama S_OK döndürür.

Açıklamalar

Özel davranış uygulamak için türetilmiş bir sınıfta bu yöntemi geçersiz kılın.

CTaskDialog::OnVerificationCheckboxClick

Kullanıcı doğrulama onay kutusuna tıkladığında çerçeve bu yöntemi çağırır.

virtual HRESULT OnVerificationCheckboxClick(BOOL bChecked);

Parametreler

b İşaretlendi
[in] DOĞRU, doğrulama onay kutusunun seçili olduğunu gösterir; YANLIŞ, olmadığını gösterir.

Dönüş Değeri

Varsayılan uygulama S_OK döndürür.

Açıklamalar

Özel davranış uygulamak için türetilmiş bir sınıfta bu yöntemi geçersiz kılın.

CTaskDialog::RemoveAllCommandControls

komutundaki tüm komut düğmesi denetimlerini CTaskDialogkaldırır.

void RemoveAllCommandControls();

Örnek

// 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.AddCommandControl(201, L"First command button control");
taskDialog.AddCommandControl(202, L"Second command button control");
taskDialog.AddCommandControl(203, L"Third command button control");

// Show the CTaskDialog and remember how the user closed it.
int selection = taskDialog.DoModal();

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

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

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

default:
   break;
}

// Remove all the command controls so that we can use the same task
// dialog with new command button controls.
taskDialog.RemoveAllCommandControls();

taskDialog.AddCommandControl(301,
                             L"New first command button control");
taskDialog.AddCommandControl(302,
                             L"New second command button control should require elevation",
                             TRUE, TRUE);
taskDialog.AddCommandControl(303,
                             L"New third command button control should be disabled");

// Change the default command button control
taskDialog.SetDefaultCommandControl(302);

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

taskDialog.DoModal();

switch (taskDialog.GetSelectedCommandControlID())
{
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 command button controls and add new ones from
// the string table resource.
taskDialog.RemoveAllCommandControls();
taskDialog.LoadCommandControls(1001, 1005);

CTaskDialog::RemoveAllRadioButtons

'den CTaskDialogtüm radyo düğmelerini kaldırır.

void RemoveAllRadioButtons();

Örnek

// 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);

CTaskDialog::SetCommandControlOptions

üzerindeki CTaskDialogbir komut düğmesi denetimini güncelleştirir.

void SetCommandControlOptions(
    int nCommandControlID,
    BOOL bEnabled,
    BOOL bRequiresElevation = FALSE);

Parametreler

nCommandControlID
[in] Güncelleştirilecek komut denetiminin kimliği.

bEnabled
[in] Belirtilen komut düğmesi denetiminin etkin mi yoksa devre dışı mı olduğunu gösteren boole parametresi.

bRequiresElevation
[in] Belirtilen komut düğmesi denetiminin yükseltilmesi gerekip gerekmediğini belirten boole parametresi.

Açıklamalar

Bir komut düğmesi denetiminin etkinleştirilip etkinleştirilmediğini veya sınıfa eklendikten sonra yükseltme gerekip gerekmediğini değiştirmek için CTaskDialog bu yöntemi kullanın.

Örnek

// 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.AddCommandControl(201, L"First command button control");
taskDialog.AddCommandControl(202, L"Second command button control");
taskDialog.AddCommandControl(203, L"Third command button control");

// Show the CTaskDialog and remember how the user closed it.
int selection = taskDialog.DoModal();

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

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

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

default:
   break;
}

// Remove all the command controls so that we can use the same task
// dialog with new command button controls.
taskDialog.RemoveAllCommandControls();

taskDialog.AddCommandControl(301,
                             L"New first command button control");
taskDialog.AddCommandControl(302,
                             L"New second command button control should require elevation",
                             TRUE, TRUE);
taskDialog.AddCommandControl(303,
                             L"New third command button control should be disabled");

// Change the default command button control
taskDialog.SetDefaultCommandControl(302);

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

taskDialog.DoModal();

switch (taskDialog.GetSelectedCommandControlID())
{
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 command button controls and add new ones from
// the string table resource.
taskDialog.RemoveAllCommandControls();
taskDialog.LoadCommandControls(1001, 1005);

CTaskDialog::SetCommonButtonOptions

Ortak düğmelerin bir alt kümesini etkinleştirilecek ve UAC yükseltmesi gerektirecek şekilde güncelleştirir.

void SetCommonButtonOptions(
    int nDisabledButtonMask,
    int nElevationButtonMask = 0);

Parametreler

nDisabledButtonMask
[in] Devre dışı bırakmak için ortak düğmeler için bir maske.

nElevationButtonMask
[in] Yükseltme gerektiren ortak düğmeler için bir maske.

Açıklamalar

CTaskDialog oluşturucu::CTaskDialog ve CTaskDialog::SetCommonButtons yöntemini kullanarak CTaskDialog Sınıfının bir örneğinde kullanılabilen ortak düğmeleri ayarlayabilirsiniz. CTaskDialog::SetCommonButtonOptions yeni ortak düğmelerin eklenmesini desteklemez.

Bu yöntemi, için kullanılamayan ortak bir düğmeyi devre dışı bırakmak veya yükseltmek için kullanırsanız, bu CTaskDialogyöntem ENSURE makrosunu kullanarak bir özel durum oluşturur.

Bu yöntem, daha önce devre dışı bırakılmış olsa bile nDisabledButtonMask içinde olmayan ancak için kullanılabilir CTaskDialog olan tüm düğmeleri etkinleştirir. Bu yöntem, yükseltmeyi benzer şekilde işler: ortak düğme kullanılabiliyorsa ancak nElevationButtonMask'e dahil değilse, ortak düğmeleri yükseltme gerektirmediği gibi kaydeder.

Örnek

// 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);

// Create a button mask.
int buttons = TDCBF_OK_BUTTON | TDCBF_CANCEL_BUTTON;
buttons |= TDCBF_RETRY_BUTTON | TDCBF_CLOSE_BUTTON;

taskDialog.SetCommonButtons(buttons);

// Disable the close button and make the retry button require
// elevation.
taskDialog.SetCommonButtonOptions(TDCBF_CLOSE_BUTTON,
                                  TDCBF_RETRY_BUTTON);

taskDialog.DoModal();

CTaskDialog::SetCommonButtons

öğesine ortak düğmeler CTaskDialogekler.

void SetCommonButtons(
    int nButtonMask,
    int nDisabledButtonMask = 0,
    int nElevationButtonMask = 0);

Parametreler

nButtonMask
[in] öğesine eklenecek düğmelerin CTaskDialogmaskesi.

nDisabledButtonMask
[in] Devre dışı bırakıla düğmelerin maskesi.

nElevationButtonMask
[in] Yükseltme gerektiren düğmelerin maskesi.

Açıklamalar

Sınıfın bu örneği CTaskDialog için görüntüleme penceresi oluşturulduktan sonra bu yöntemi çağıramazsınız. Bunu yaparsanız, bu yöntem bir özel durum oluşturur.

nButtonMask tarafından belirtilen düğmeler, daha önce öğesine CTaskDialogeklenen tüm yaygın düğmeleri geçersiz kılar. Yalnızca nButtonMask içinde belirtilen düğmeler kullanılabilir.

nDisabledButtonMask veya nElevationButtonMask, nButtonMask içinde olmayan bir düğme içeriyorsa, bu yöntem ENSURE makrosunu kullanarak bir özel durum oluşturur.

Varsayılan olarak, tüm ortak düğmeler etkinleştirilir ve yükseltme gerektirmez.

Örnek

// 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);

// Create a button mask.
int buttons = TDCBF_OK_BUTTON | TDCBF_CANCEL_BUTTON;
buttons |= TDCBF_RETRY_BUTTON | TDCBF_CLOSE_BUTTON;

taskDialog.SetCommonButtons(buttons);

// Disable the close button and make the retry button require
// elevation.
taskDialog.SetCommonButtonOptions(TDCBF_CLOSE_BUTTON,
                                  TDCBF_RETRY_BUTTON);

taskDialog.DoModal();

CTaskDialog::SetContent

içeriğini CTaskDialoggüncelleştirir.

void SetContent(const CString& strContent);

Parametreler

strContent
[in] Kullanıcıya görüntülenecek dize.

Açıklamalar

sınıfının içeriği CTaskDialog , iletişim kutusunun ana bölümünde kullanıcıya görüntülenen metindir.

Örnek

// 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);

// Setting new information to be able to reuse the dialog resource
taskDialog.SetWindowTitle(L"New title for the task dialog");
taskDialog.SetContent(L"New message to show the user.");
taskDialog.SetMainInstruction(L"Even more important!");
taskDialog.SetMainIcon(TD_ERROR_ICON);
taskDialog.SetDialogWidth(300);

// Add a footer
taskDialog.SetFooterText(L"Footer information for the dialog.");
taskDialog.SetFooterIcon(TD_INFORMATION_ICON);

// Add expansion information
taskDialog.SetExpansionArea(L"Additional information\non two lines.",
                            L"Click here for more information.",
                            L"Click here to hide the extra information.");

// Change the options to show the expanded information by default.
// It is necessary to retrieve the current options first.
int options = taskDialog.GetOptions();
options |= TDF_EXPANDED_BY_DEFAULT;
taskDialog.SetOptions(options);

taskDialog.DoModal();

CTaskDialog::SetDefaultCommandControl

Varsayılan komut düğmesi denetimini belirtir.

void SetDefaultCommandControl(int nCommandControlID);

Parametreler

nCommandControlID
[in] Varsayılan olarak komut düğmesi denetiminin kimliği.

Açıklamalar

Varsayılan komut düğmesi denetimi, kullanıcıya ilk kez görüntülendiğinde CTaskDialog seçilen denetimdir.

Bu yöntem, nCommandControlID tarafından belirtilen komut düğmesi denetimini bulamazsa bir özel durum oluşturur.

Örnek

// 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.AddCommandControl(201, L"First command button control");
taskDialog.AddCommandControl(202, L"Second command button control");
taskDialog.AddCommandControl(203, L"Third command button control");

// Show the CTaskDialog and remember how the user closed it.
int selection = taskDialog.DoModal();

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

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

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

default:
   break;
}

// Remove all the command controls so that we can use the same task
// dialog with new command button controls.
taskDialog.RemoveAllCommandControls();

taskDialog.AddCommandControl(301,
                             L"New first command button control");
taskDialog.AddCommandControl(302,
                             L"New second command button control should require elevation",
                             TRUE, TRUE);
taskDialog.AddCommandControl(303,
                             L"New third command button control should be disabled");

// Change the default command button control
taskDialog.SetDefaultCommandControl(302);

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

taskDialog.DoModal();

switch (taskDialog.GetSelectedCommandControlID())
{
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 command button controls and add new ones from
// the string table resource.
taskDialog.RemoveAllCommandControls();
taskDialog.LoadCommandControls(1001, 1005);

CTaskDialog::SetDefaultRadioButton

Varsayılan radyo düğmesini belirtir.

void SetDefaultRadioButton(int nRadioButtonID);

Parametreler

nRadioButtonID
[in] Varsayılan olarak radyo düğmesinin kimliği.

Açıklamalar

Varsayılan radyo düğmesi, kullanıcıya ilk kez görüntülendiğinde CTaskDialog seçilen düğmedir.

Bu yöntem, nRadioButtonID tarafından belirtilen radyo düğmesini bulamazsa bir özel durum oluşturur.

Örnek

// 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);

CTaskDialog::SetDialogWidth

öğesinin genişliğini CTaskDialogayarlar.

void SetDialogWidth(int nWidth = 0);

Parametreler

nWidth
[in] İletişim kutusunun piksel cinsinden genişliği.

Açıklamalar

nWidth parametresi 0'dan büyük veya buna eşit olmalıdır. Aksi takdirde, bu yöntem bir özel durum oluşturur.

nWidth 0 olarak ayarlanırsa, bu yöntem iletişim kutusunu varsayılan boyuta ayarlar.

Örnek

// 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);

// Setting new information to be able to reuse the dialog resource
taskDialog.SetWindowTitle(L"New title for the task dialog");
taskDialog.SetContent(L"New message to show the user.");
taskDialog.SetMainInstruction(L"Even more important!");
taskDialog.SetMainIcon(TD_ERROR_ICON);
taskDialog.SetDialogWidth(300);

// Add a footer
taskDialog.SetFooterText(L"Footer information for the dialog.");
taskDialog.SetFooterIcon(TD_INFORMATION_ICON);

// Add expansion information
taskDialog.SetExpansionArea(L"Additional information\non two lines.",
                            L"Click here for more information.",
                            L"Click here to hide the extra information.");

// Change the options to show the expanded information by default.
// It is necessary to retrieve the current options first.
int options = taskDialog.GetOptions();
options |= TDF_EXPANDED_BY_DEFAULT;
taskDialog.SetOptions(options);

taskDialog.DoModal();

CTaskDialog::SetExpansionArea

öğesinin genişletme alanını CTaskDialoggüncelleştirir.

void SetExpansionArea(
    const CString& strExpandedInformation,
    const CString& strCollapsedLabel = _T(""),
    const CString& strExpandedLabel = _T(""));

Parametreler

strExpandedInformation
[in] Kullanıcı genişletme düğmesine tıkladığında iletişim kutusunun ana gövdesinde görüntülenen dize CTaskDialog .

strCollapsedLabel
[in] Genişletilmiş alan daraltıldığında genişletme düğmesinin yanında görüntülenen dize CTaskDialog .

strExpandedLabel
[in] Genişletilmiş alan görüntülendiğinde genişletme düğmesinin yanında görüntülenen dize CTaskDialog .

Açıklamalar

sınıfının genişletme alanı CTaskDialog , kullanıcıya ek bilgi sağlamanıza olanak tanır. Genişletme alanı, başlığının ve içerik dizesinin CTaskDialoghemen altında bulunan öğesinin ana bölümündedir.

CTaskDialog ilk kez görüntülendiğinde, genişletilmiş bilgileri göstermez ve genişletme düğmesinin yanına yerleştirirstrCollapsedLabel. Kullanıcı genişletme düğmesine tıkladığında strExpandedInformation CTaskDialog değerini görüntüler ve etiketi strExpandedLabel olarak değiştirir.

Örnek

// 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);

// Setting new information to be able to reuse the dialog resource
taskDialog.SetWindowTitle(L"New title for the task dialog");
taskDialog.SetContent(L"New message to show the user.");
taskDialog.SetMainInstruction(L"Even more important!");
taskDialog.SetMainIcon(TD_ERROR_ICON);
taskDialog.SetDialogWidth(300);

// Add a footer
taskDialog.SetFooterText(L"Footer information for the dialog.");
taskDialog.SetFooterIcon(TD_INFORMATION_ICON);

// Add expansion information
taskDialog.SetExpansionArea(L"Additional information\non two lines.",
                            L"Click here for more information.",
                            L"Click here to hide the extra information.");

// Change the options to show the expanded information by default.
// It is necessary to retrieve the current options first.
int options = taskDialog.GetOptions();
options |= TDF_EXPANDED_BY_DEFAULT;
taskDialog.SetOptions(options);

taskDialog.DoModal();

CTaskDialog::SetFooterIcon

alt bilgi simgesini CTaskDialoggüncelleştirir.

void SetFooterIcon(HICON hFooterIcon);
void SetFooterIcon(LPCWSTR lpszFooterIcon);

Parametreler

hFooterIcon
[in] için yeni simge CTaskDialog.

lpszFooterIcon
[in] için yeni simge CTaskDialog.

Açıklamalar

Alt bilgi simgesi, CTaskDialog Sınıfının en altında görüntülenir. İlişkili alt bilgi metni olabilir. Alt bilgi metnini CTaskDialog::SetFooterText ile değiştirebilirsiniz.

Bu yöntem, görüntüleniyorsa veya giriş parametresi NULL ise ENSURE makrosunun CTaskDialog bir özel durumu oluşturur.

ACTaskDialog, yalnızca alt bilgi olarak veya LPCWSTR simgesini kabul HICON edebilir. Bu, oluşturucuda veya CTaskDialog::SetOptions içinde TDF_USE_HICON_FOOTER seçeneği ayarlanarak yapılandırılır. Varsayılan olarak, CTaskDialog alt bilgi simgesi için giriş türü olarak kullanılacak LPCWSTR şekilde yapılandırılır. Uygunsuz türü kullanarak simgeyi ayarlamaya çalışırsanız bu yöntem bir özel durum oluşturur.

Örnek

// 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);

// Setting new information to be able to reuse the dialog resource
taskDialog.SetWindowTitle(L"New title for the task dialog");
taskDialog.SetContent(L"New message to show the user.");
taskDialog.SetMainInstruction(L"Even more important!");
taskDialog.SetMainIcon(TD_ERROR_ICON);
taskDialog.SetDialogWidth(300);

// Add a footer
taskDialog.SetFooterText(L"Footer information for the dialog.");
taskDialog.SetFooterIcon(TD_INFORMATION_ICON);

// Add expansion information
taskDialog.SetExpansionArea(L"Additional information\non two lines.",
                            L"Click here for more information.",
                            L"Click here to hide the extra information.");

// Change the options to show the expanded information by default.
// It is necessary to retrieve the current options first.
int options = taskDialog.GetOptions();
options |= TDF_EXPANDED_BY_DEFAULT;
taskDialog.SetOptions(options);

taskDialog.DoModal();

CTaskDialog::SetFooterText

alt bilgisinde CTaskDialogbulunan metni güncelleştirir.

void SetFooterText(const CString& strFooterText);

Parametreler

strFooterText
[in] Alt bilgi için yeni metin.

Açıklamalar

Alt bilgi simgesi alt kısmındaki alt bilgi metninin CTaskDialogyanında görünür. Alt bilgi simgesini CTaskDialog::SetFooterIcon ile değiştirebilirsiniz.

Örnek

// 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);

// Setting new information to be able to reuse the dialog resource
taskDialog.SetWindowTitle(L"New title for the task dialog");
taskDialog.SetContent(L"New message to show the user.");
taskDialog.SetMainInstruction(L"Even more important!");
taskDialog.SetMainIcon(TD_ERROR_ICON);
taskDialog.SetDialogWidth(300);

// Add a footer
taskDialog.SetFooterText(L"Footer information for the dialog.");
taskDialog.SetFooterIcon(TD_INFORMATION_ICON);

// Add expansion information
taskDialog.SetExpansionArea(L"Additional information\non two lines.",
                            L"Click here for more information.",
                            L"Click here to hide the extra information.");

// Change the options to show the expanded information by default.
// It is necessary to retrieve the current options first.
int options = taskDialog.GetOptions();
options |= TDF_EXPANDED_BY_DEFAULT;
taskDialog.SetOptions(options);

taskDialog.DoModal();

CTaskDialog::SetMainIcon

öğesinin ana simgesini CTaskDialoggüncelleştirir.

void SetMainIcon(HICON hMainIcon);
void SetMainIcon(LPCWSTR lpszMainIcon);

Parametreler

hMainIcon
[in] Yeni simge.

lpszMainIcon
[in] Yeni simge.

Açıklamalar

Bu yöntem, görüntüleniyorsa veya giriş parametresi NULL ise ENSURE makrosunun CTaskDialog bir özel durumu oluşturur.

, CTaskDialog yalnızca bir HICON veya LPCWSTR simgesini ana simge olarak kabul edebilir. Oluşturucuda veya CTaskDialog::SetOptions yönteminde TDF_USE_HICON_MAIN seçeneğini ayarlayarak bunu yapılandırabilirsiniz. varsayılan olarak, CTaskDialog ana simge için giriş türü olarak kullanılacak LPCWSTR şekilde yapılandırılır. Uygunsuz türü kullanarak simgeyi ayarlamaya çalışırsanız bu yöntem bir özel durum oluşturur.

Örnek

// 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);

// Setting new information to be able to reuse the dialog resource
taskDialog.SetWindowTitle(L"New title for the task dialog");
taskDialog.SetContent(L"New message to show the user.");
taskDialog.SetMainInstruction(L"Even more important!");
taskDialog.SetMainIcon(TD_ERROR_ICON);
taskDialog.SetDialogWidth(300);

// Add a footer
taskDialog.SetFooterText(L"Footer information for the dialog.");
taskDialog.SetFooterIcon(TD_INFORMATION_ICON);

// Add expansion information
taskDialog.SetExpansionArea(L"Additional information\non two lines.",
                            L"Click here for more information.",
                            L"Click here to hide the extra information.");

// Change the options to show the expanded information by default.
// It is necessary to retrieve the current options first.
int options = taskDialog.GetOptions();
options |= TDF_EXPANDED_BY_DEFAULT;
taskDialog.SetOptions(options);

taskDialog.DoModal();

CTaskDialog::SetMainInstruction

öğesinin ana yönergesini CTaskDialoggüncelleştirir.

void SetMainInstruction(const CString& strInstructions);

Parametreler

strInstructions
[in] Yeni ana yönerge.

Açıklamalar

Sınıfın CTaskDialog ana yönergesi, kullanıcıya büyük bir kalın yazı tipinde görüntülenen metindir. Başlık çubuğunun altındaki iletişim kutusunda bulunur.

Örnek

// 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);

// Setting new information to be able to reuse the dialog resource
taskDialog.SetWindowTitle(L"New title for the task dialog");
taskDialog.SetContent(L"New message to show the user.");
taskDialog.SetMainInstruction(L"Even more important!");
taskDialog.SetMainIcon(TD_ERROR_ICON);
taskDialog.SetDialogWidth(300);

// Add a footer
taskDialog.SetFooterText(L"Footer information for the dialog.");
taskDialog.SetFooterIcon(TD_INFORMATION_ICON);

// Add expansion information
taskDialog.SetExpansionArea(L"Additional information\non two lines.",
                            L"Click here for more information.",
                            L"Click here to hide the extra information.");

// Change the options to show the expanded information by default.
// It is necessary to retrieve the current options first.
int options = taskDialog.GetOptions();
options |= TDF_EXPANDED_BY_DEFAULT;
taskDialog.SetOptions(options);

taskDialog.DoModal();

CTaskDialog::SetOptions

için seçenekleri yapılandırılır CTaskDialog.

void SetOptions(int nOptionFlag);

Parametreler

nOptionFlag
[in] için CTaskDialogkullanılacak bayrak kümesi.

Açıklamalar

Bu yöntem, için CTaskDialogtüm geçerli seçenekleri temizler. Geçerli seçenekleri korumak için önce CTaskDialog::GetOptions ile bunları almanız ve ayarlamak istediğiniz seçeneklerle birleştirmeniz gerekir.

Aşağıdaki tabloda tüm geçerli seçenekler listelenmiştir.

Veri Akışı Adı Açıklama
TDF_ENABLE_HYPERLINKS içindeki CTaskDialogköprüleri etkinleştirir.
TDF_USE_HICON_MAIN CTaskDialog öğesini ana simge için kullanacak HICON şekilde yapılandırılır. Bunun alternatifi bir LPCWSTRkullanmaktır.
TDF_USE_HICON_FOOTER CTaskDialog alt bilgi simgesi için kullanmak HICON üzere öğesini yapılandırılır. Bunun alternatifi bir LPCWSTRkullanmaktır.
TDF_ALLOW_DIALOG_CANCELLATION İptal düğmesi etkinleştirilmemiş olsa bile kullanıcının CTaskDialog klavyeyi veya iletişim kutusunun sağ üst köşesindeki simgeyi kullanarak kapatmasını sağlar. Bu bayrak ayarlanmadıysa ve İptal düğmesi etkinleştirilmediyse, kullanıcı Alt+F4, Escape tuşu veya başlık çubuğunun kapat düğmesini kullanarak iletişim kutusunu kapatamaz.
TDF_USE_COMMAND_LINKS CTaskDialog komutunu komut düğmesi denetimlerini kullanacak şekilde yapılandırılır.
TDF_USE_COMMAND_LINKS_NO_ICON komutunu, denetimin CTaskDialog yanında bir simge görüntülemeden komut düğmesi denetimlerini kullanacak şekilde yapılandırılır. TDF_USE_COMMAND_LINKS TDF_USE_COMMAND_LINKS_NO_ICON geçersiz kılar.
TDF_EXPAND_FOOTER_AREA Genişletme alanının şu anda genişletilmiş olduğunu gösterir.
TDF_EXPANDED_BY_DEFAULT Genişletme alanının varsayılan olarak genişletilip genişletileceğini belirler.
TDF_VERIFICATION_FLAG_CHECKED Doğrulama onay kutusunun seçili olduğunu gösterir.
TDF_SHOW_PROGRESS_BAR bir ilerleme çubuğu görüntülemek için öğesini CTaskDialog yapılandırılır.
TDF_SHOW_MARQUEE_PROGRESS_BAR İlerleme çubuğunu kayan yazı ilerleme çubuğu olacak şekilde yapılandırılır. Bu seçeneği etkinleştirirseniz, TDF_SHOW_PROGRESS_BAR beklenen davranışa sahip olacak şekilde ayarlamanız gerekir.
TDF_CALLBACK_TIMER Geri çağırma aralığının CTaskDialog yaklaşık 200 milisaniye olarak ayarlandığını gösterir.
TDF_POSITION_RELATIVE_TO_WINDOW CTaskDialog öğesini üst pencereye göre ortalanacak şekilde yapılandırılır. Bu bayrak etkin değilse, CTaskDialog izleyiciye göre ortalanır.
TDF_RTL_LAYOUT sağdan sola okuma düzeni için öğesini CTaskDialog yapılandırılır.
TDF_NO_DEFAULT_RADIO_BUTTON Görüntülendiğinde radyo düğmesinin CTaskDialog seçilmediğini gösterir.
TDF_CAN_BE_MINIMIZED Kullanıcının simge durumuna küçültülmüş olmasını CTaskDialogsağlar. Bu seçeneği desteklemek için kalıcı CTaskDialog olamaz. MFC, modeless CTaskDialog'ı desteklemediğinden MFC bu seçeneği desteklemez.

Örnek

// 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);

// Setting new information to be able to reuse the dialog resource
taskDialog.SetWindowTitle(L"New title for the task dialog");
taskDialog.SetContent(L"New message to show the user.");
taskDialog.SetMainInstruction(L"Even more important!");
taskDialog.SetMainIcon(TD_ERROR_ICON);
taskDialog.SetDialogWidth(300);

// Add a footer
taskDialog.SetFooterText(L"Footer information for the dialog.");
taskDialog.SetFooterIcon(TD_INFORMATION_ICON);

// Add expansion information
taskDialog.SetExpansionArea(L"Additional information\non two lines.",
                            L"Click here for more information.",
                            L"Click here to hide the extra information.");

// Change the options to show the expanded information by default.
// It is necessary to retrieve the current options first.
int options = taskDialog.GetOptions();
options |= TDF_EXPANDED_BY_DEFAULT;
taskDialog.SetOptions(options);

taskDialog.DoModal();

CTaskDialog::SetProgressBarMarquee

için bir kayan CTaskDialog yazı çubuğu yapılandırıp iletişim kutusuna ekler.

void SetProgressBarMarquee(
    BOOL bEnabled = TRUE,
    int nMarqueeSpeed = 0);

Parametreler

bEnabled
[in] Kayan yazı çubuğunu etkinleştirmek için TRUE; Kayan yazı çubuğunu devre dışı bırakmak ve içinden CTaskDialogkaldırmak için YANLIŞ

nMarqueeSpeed
[in] Kayan yazı çubuğunun hızını gösteren tamsayı.

Açıklamalar

Kayan yazı çubuğu, sınıfın ana metninin CTaskDialog altında görünür.

Kayan yazı çubuğunun hızını ayarlamak için nMarqueeSpeed kullanın; daha büyük değerler daha yavaş bir hız gösterir. nMarqueeSpeed için 0 değeri, kayan yazı çubuğunun Windows için varsayılan hızda hareket etmesini sağlar.

nMarqueeSpeed değeri 0'dan küçükse, bu yöntem ENSURE makrosunun bir özel durumu oluşturur.

Örnek

// 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);

// Add a marquee progress bar.
taskDialog.SetProgressBarMarquee();

taskDialog.DoModal();

// Remove the marquee bar and replace it with a standard progress bar
taskDialog.SetProgressBarMarquee(0);
taskDialog.SetProgressBarRange(0, 100);
taskDialog.SetProgressBarPosition(75);
taskDialog.SetProgressBarState();

taskDialog.DoModal();

CTaskDialog::SetProgressBarPosition

İlerleme çubuğunun konumunu ayarlar.

void SetProgressBarPosition(int nProgressPos);

Parametreler

nProgressPos
[in] İlerleme çubuğunun konumu.

Açıklamalar

nProgressPos ilerleme çubuğu aralığında değilse, bu yöntem ENSURE makrosunda bir özel durum oluşturur. İlerleme çubuğu aralığını CTaskDialog::SetProgressBarRange ile değiştirebilirsiniz.

Örnek

// 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);

// Add a marquee progress bar.
taskDialog.SetProgressBarMarquee();

taskDialog.DoModal();

// Remove the marquee bar and replace it with a standard progress bar
taskDialog.SetProgressBarMarquee(0);
taskDialog.SetProgressBarRange(0, 100);
taskDialog.SetProgressBarPosition(75);
taskDialog.SetProgressBarState();

taskDialog.DoModal();

CTaskDialog::SetProgressBarRange

İlerleme çubuğunun aralığını ayarlar.

void SetProgressBarRange(
    int nRangeMin,
    int nRangeMax);

Parametreler

nRangeMin
[in] İlerleme çubuğunun alt sınırı.

nRangeMax
[in] İlerleme çubuğunun üst sınırı.

Açıklamalar

İlerleme çubuğunun konumu nRangeMin ve nRangeMax'a göredir. Örneğin, nRangeMin 50 ve nRangeMax 100 ise, ilerleme çubuğunun ortasında 75 konumu bulunur. İlerleme çubuğunun konumunu ayarlamak için CTaskDialog::SetProgressBarPosition kullanın.

İlerleme çubuğunu görüntülemek için TDF_SHOW_PROGRESS_BAR seçeneğinin etkinleştirilmesi ve TDF_SHOW_MARQUEE_PROGRESS_BAR etkinleştirilmemesi gerekir. Bu yöntem TDF_SHOW_PROGRESS_BAR otomatik olarak ayarlar ve TDF_SHOW_MARQUEE_PROGRESS_BAR temizler. CTaskDialog Sınıfının bu örneğinin seçeneklerini el ile değiştirmek için CTaskDialog::SetOptions kullanın.

nRangeMin, nRangeMax değerinden küçük değilse, bu yöntem ENSURE makrosunun bir özel durumu oluşturur. Bu yöntem, zaten görüntüleniyorsa ve bir kayan CTaskDialog yazı ilerleme çubuğuna sahipse bir özel durum oluşturur.

Örnek

// 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);

// Add a marquee progress bar.
taskDialog.SetProgressBarMarquee();

taskDialog.DoModal();

// Remove the marquee bar and replace it with a standard progress bar
taskDialog.SetProgressBarMarquee(0);
taskDialog.SetProgressBarRange(0, 100);
taskDialog.SetProgressBarPosition(75);
taskDialog.SetProgressBarState();

taskDialog.DoModal();

CTaskDialog::SetProgressBarState

İlerleme çubuğunun durumunu ayarlar ve üzerinde CTaskDialoggörüntüler.

void SetProgressBarState(int nState = PBST_NORMAL);

Parametreler

nState
[in] İlerleme çubuğunun durumu. Olası değerler için Açıklamalar bölümüne bakın.

Açıklamalar

Bu yöntem, zaten görüntüleniyorsa ve bir kayan yazı ilerleme çubuğu varsa, ENSURE makrosunun CTaskDialog bir özel durumu oluşturur.

Aşağıdaki tabloda nState için olası değerler listelemektedir. Tüm bu durumlarda, ilerleme çubuğu belirlenen durdurma konumuna ulaşana kadar normal renkle doldurulur. Bu noktada, duruma göre renk değişir.

Veri Akışı Adı Açıklama
PBST_NORMAL İlerleme çubuğu dolduktan sonra, CTaskDialog çubuğun rengini değiştirmez. Varsayılan olarak, normal renk yeşildir.
PBST_ERROR İlerleme çubuğu dolduktan sonra, CTaskDialog çubuğun rengi hata rengine dönüşür. Varsayılan olarak, bu kırmızıdır.
PBST_PAUSED İlerleme çubuğu dolduktan sonra, CTaskDialog çubuğun rengini duraklatılmış renge değiştirir. Varsayılan olarak, bu sarıdır.

CTaskDialog::SetProgressBarPosition ile ilerleme çubuğunun nerede duracağı ayarlayabilirsiniz.

Örnek

// 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);

// Add a marquee progress bar.
taskDialog.SetProgressBarMarquee();

taskDialog.DoModal();

// Remove the marquee bar and replace it with a standard progress bar
taskDialog.SetProgressBarMarquee(0);
taskDialog.SetProgressBarRange(0, 100);
taskDialog.SetProgressBarPosition(75);
taskDialog.SetProgressBarState();

taskDialog.DoModal();

CTaskDialog::SetRadioButtonOptions

Radyo düğmesini etkinleştirir veya devre dışı bırakır.

void SetRadioButtonOptions(
    int nRadioButtonID,
    BOOL bEnabled);

Parametreler

nRadioButtonID
[in] Radyo düğmesi denetiminin kimliği.

bEnabled
[in] Radyo düğmesini etkinleştirmek için TRUE; Radyo düğmesini devre dışı bırakmak için YANLIŞ.

Açıklamalar

nRadioButtonID bir radyo düğmesi için geçerli bir kimlik değilse, bu yöntem ENSURE makrosuyla bir özel durum oluşturur.

Örnek

// 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);

CTaskDialog::SetVerificationCheckbox

Doğrulama onay kutusunun işaretli durumunu ayarlar.

void SetVerificationCheckbox(BOOL bChecked);

Parametreler

b İşaretlendi
[in] Görüntülendiğinde CTaskDialog doğrulama onay kutusunun seçili olması için DOĞRU; Görüntülendiğinde doğrulama onay kutusunun seçili olmasını sağlamak için CTaskDialog YANLIŞ.

Örnek

// 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);

// Add the verification checkbox and set the default state.
taskDialog.SetVerificationCheckboxText(L"Remember your selection.");
taskDialog.SetVerificationCheckbox(false);

taskDialog.DoModal();

if (taskDialog.GetVerificationCheckboxState())
{
   // TODO: Write settings of the task dialog to the registry
}

CTaskDialog::SetVerificationCheckboxText

Doğrulama onay kutusunun sağındaki görüntülenen metni ayarlar.

void SetVerificationCheckboxText(CString& strVerificationText);

Parametreler

strVerificationText
[in] Bu yöntemin doğrulama onay kutusunun yanında görüntülediği metin.

Açıklamalar

Sınıfın bu örneği zaten görüntüleniyorsa, bu yöntem ENSURE makrosunun CTaskDialog bir özel durumu oluşturur.

Örnek

// 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);

// Add the verification checkbox and set the default state.
taskDialog.SetVerificationCheckboxText(L"Remember your selection.");
taskDialog.SetVerificationCheckbox(false);

taskDialog.DoModal();

if (taskDialog.GetVerificationCheckboxState())
{
   // TODO: Write settings of the task dialog to the registry
}

CTaskDialog::SetWindowTitle

öğesinin CTaskDialogbaşlığını ayarlar.

void SetWindowTitle(CString& strWindowTitle);

Parametreler

strWindowTitle
[in] için CTaskDialogyeni başlık.

Açıklamalar

Örnek

// 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);

// Setting new information to be able to reuse the dialog resource
taskDialog.SetWindowTitle(L"New title for the task dialog");
taskDialog.SetContent(L"New message to show the user.");
taskDialog.SetMainInstruction(L"Even more important!");
taskDialog.SetMainIcon(TD_ERROR_ICON);
taskDialog.SetDialogWidth(300);

// Add a footer
taskDialog.SetFooterText(L"Footer information for the dialog.");
taskDialog.SetFooterIcon(TD_INFORMATION_ICON);

// Add expansion information
taskDialog.SetExpansionArea(L"Additional information\non two lines.",
                            L"Click here for more information.",
                            L"Click here to hide the extra information.");

// Change the options to show the expanded information by default.
// It is necessary to retrieve the current options first.
int options = taskDialog.GetOptions();
options |= TDF_EXPANDED_BY_DEFAULT;
taskDialog.SetOptions(options);

taskDialog.DoModal();

CTaskDialog::ShowDialog

oluşturur CTaskDialogve görüntüler.

static INT_PTR ShowDialog(
    const CString& strContent,
    const CString& strMainInstruction,
    const CString& strTitle,
    int nIDCommandControlsFirst,
    int nIDCommandControlsLast,
    int nCommonButtons = TDCBF_YES_BUTTON | TDCBF_NO_BUTTON,
    int nTaskDialogOptions = TDF_ENABLE_HYPERLINKS | TDF_USE_COMMAND_LINKS,
    const CString& strFooter = _T(""));

Parametreler

strContent
[in] öğesinin içeriği CTaskDialogiçin kullanılacak dize.

strMainInstruction
[in] öğesinin ana yönergesi CTaskDialog.

strTitle
[in] öğesinin CTaskDialogbaşlığı.

nIDCommandControlsFirst
[in] İlk komutun dize kimliği.

nIDCommandControlsLast
[in] Son komutun dize kimliği.

nCommonButtons
[in] öğesine eklenecek düğmelerin CTaskDialogmaskesi.

nTaskDialogOptions
[in] için CTaskDialogkullanılacak seçenekler kümesi.

strFooter
[in] Alt bilgi olarak kullanılacak dize.

Dönüş Değeri

Kullanıcı tarafından yapılan seçime karşılık gelen bir tamsayı.

Açıklamalar

Bu statik yöntem, kodunuzda açıkça bir nesne oluşturmadan sınıfın CTaskDialog bir CTaskDialog örneğini oluşturmanıza olanak tanır. Nesne olmadığındanCTaskDialog, kullanıcıya göstermek CTaskDialog için bu yöntemi kullanırsanız öğesinin CTaskDialog diğer yöntemlerini çağıramazsınız.

Bu yöntem, uygulamanızın kaynak dosyasındaki verileri kullanarak komut düğmesi denetimleri oluşturur. Kaynak dosyasındaki dize tablosunda ilişkili dize kimliklerine sahip çeşitli dizeler vardır. Bu yöntem, nIDCommandControlsFirst ile nCommandControlsLast (dahil) arasında dize tablosundaki her geçerli girdi için bir komut düğmesi denetimi ekler. Bu komut düğmesi denetimleri için, dize tablosundaki dize denetimin resim yazısıdır ve dize kimliği denetimin kimliğidir.

Geçerli seçeneklerin listesi için bkz . CTaskDialog::SetOptions .

kullanıcı CTaskDialog ortak bir düğmeyi, komut bağlantısı denetimini seçtiğinde veya kapattığında CTaskDialogkapanır. Dönüş değeri, kullanıcının iletişim kutusunu nasıl kapattığını gösteren tanımlayıcıdır.

Örnek

// TODO: Replace the string below with the actual message to the user
CString message("Important information to the user");
// TODO: Replace the string below with the title of this project
CString title("Project Title");

CString emptyString;

if (CTaskDialog::IsSupported())
{
   CTaskDialog::ShowDialog(message, emptyString, title, 0, 0,
                           TDCBF_OK_BUTTON);
}
else
{
   AfxMessageBox(message);
}

CTaskDialog::TaskDialogCallback

Çerçeve, çeşitli Windows iletilerine yanıt olarak bu yöntemi çağırır.

friend:
HRESULT TaskDialogCallback(
    HWND hWnd,
    UINT uNotification,
    WPARAM wParam,
    LPARAM lParam,
    LONG_PTR dwRefData);

Parametreler

hwnd
[in] yapısına yönelik m_hWnd CTaskDialogbir tanıtıcı.

uNotification
[in] Oluşturulan iletiyi belirten bildirim kodu.

wParam
[in] İleti hakkında daha fazla bilgi.

lParam
[in] İleti hakkında daha fazla bilgi.

dwRefData
[in] Geri çağırma iletisinin CTaskDialog uygulandığı nesneye yönelik bir işaretçi.

Dönüş Değeri

Belirli bir bildirim koduna bağlıdır. Daha fazla bilgi için Açıklamalar bölümüne bakın.

Açıklamalar

varsayılan uygulaması TaskDialogCallback belirli bir iletiyi işler ve ardından CTaskDialog Sınıfının uygun On yöntemini çağırır. Örneğin, TDN_BUTTON_CLICKED iletisine TaskDialogCallback yanıt olarak CTaskDialog::OnCommandControlClick çağrısı yapar.

wParam ve lParam değerleri, oluşturulan belirli iletiye bağlıdır. Bu değerlerden birinin veya her ikisinin de boş olması mümkündür. Aşağıdaki tabloda desteklenen varsayılan bildirimler ve wParam ile lParam değerlerinin neyi temsil ettiğini listeler. Türetilmiş bir sınıfta bu yöntemi geçersiz kılarsanız, aşağıdaki tablodaki her ileti için geri çağırma kodunu uygulamanız gerekir.

Bildirim İletisi wParam Değeri lParam Değeri
TDN_CREATED Kullanılmadı. Kullanılmadı.
TDN_NAVIGATED Kullanılmadı. Kullanılmadı.
TDN_BUTTON_CLICKED Komut düğmesi denetim kimliği. Kullanılmadı.
TDN_HYPERLINK_CLICKED Kullanılmadı. Bağlantıyı içeren bir LPCWSTR yapısı.
TDN_TIMER Oluşturulduktan veya zamanlayıcı sıfırlandıktan sonra CTaskDialog milisaniye cinsinden süre. Kullanılmadı.
TDN_DESTROYED Kullanılmadı. Kullanılmadı.
TDN_RADIO_BUTTON_CLICKED Radyo düğmesi kimliği. Kullanılmadı.
TDN_DIALOG_CONSTRUCTED Kullanılmadı. Kullanılmadı.
TDN_VERIFICATION_CLICKED Onay kutusu işaretliyse 1, işaretli değilse 0. Kullanılmadı.
TDN_HELP Kullanılmadı. Kullanılmadı.
TDN_EXPANDO_BUTTON_CLICKED Genişletme alanı daraltılmışsa 0; genişletme metni görüntüleniyorsa sıfır olmayan. Kullanılmadı.

Ayrıca bkz.

Sınıflar
CObject Sınıfı
Hiyerarşi Grafiği
İzlenecek yol: Bir Uygulamaya CTaskDialog Ekleme