-
Tab Controls
I am working on an MS Office Addin developed in ATL COM. There is an option dialog which has a tab control inside having Property Sheets like this
Code:
class COptions_Buffers : public WTL::CPropertyPage<IDD_OPTIONS_BUFFERS>
{
..........................................
..........................................
}
These property sheets are invoked using DoModal
Code:
COptionsBox::COptionsBox(const HINSTANCE & hResourceInstance,
DWORD * pUpdateCommand,
const DWORD dwMask):
m_hResourceInstance(hResourceInstance)
{
//WTL::CPropertySheet sheet( CUtils::GetResourceString( IDS_GUI_OPTIONS_OPTIONS ).c_str() );
COptionsSheet sheet( CUtils::GetResourceString_( IDS_GUI_OPTIONS_OPTIONS ).c_str() );
sheet.m_psh.dwFlags &= ~PSH_HASHELP;
HICON hIcon = LoadIcon(m_hResourceInstance, MAKEINTRESOURCE(IDI_ICON1));
sheet.m_psh.hIcon = hIcon;
sheet.m_psh.dwFlags |= PSH_USEHICON;
//COptions_CriticalChain page8;
COptions_Buffers page1;
//COptions_Statusing page10;
COptions_Update page9;
COptions_UnDo page6;
COptions_Trend page5;
COptions_CCPMView page2;
COptions_Colors page3;
COptions_Toolbar page4(pUpdateCommand);
//COptions_Fields page11;
if(dwMask & 1) //general
{
throw EXCEPTION_IMPLEMENTATION;
//sheet.AddPage(page8);
}
if(dwMask & 2) //buffers
{
sheet.AddPage(page1);
}
/*if(dwMask & 4)
{
sheet.AddPage(page10);
}*/
if(dwMask & 8)
{
sheet.AddPage(page9);
}
if(dwMask & 16)
{
sheet.AddPage(page6);
}
if(dwMask & 32)
{
sheet.AddPage(page5);
}
if(dwMask & 64) //view
{
sheet.AddPage(page2);
}
if(dwMask & 128)
{
sheet.AddPage(page3);
}
if(dwMask & 256)
{
sheet.AddPage(page4);
}
if(dwMask & 512)
{
throw EXCEPTION_IMPLEMENTATION;
//sheet.AddPage(page11);
}
sheet.DoModal();
}
The main parent window has got an Apply button which is by default disabled and I want to enable it when the user clicks on any of the radio button inside its child property page. How can I do that??
Thanks in Advance
-
Re: Tab Controls
Add a handler for those radio buttons and in it call EnableWindow for the apply button.