我有两个按钮:
我想启用" A"任何时候用户" Hex"按钮被选中(" A"是"禁用"当它被创建时),我该怎么做?谢谢大家。
答案 0 :(得分:5)
您需要使用CButton's EnableWindow功能。
buttonA.EnableWindow( TRUE );
如果您没有CButton
对象,可以通过调用GetDlgItem
及其ID来访问该按钮:
GetDlgItem( IDC_BUTTON_A ).EnableWindow( TRUE );
答案 1 :(得分:2)
您应该使用ON_UPDATE_COMMAND_UI
机制来启用/禁用“A'或对话框中的任何其他按钮。默认情况下,它不适用于基于对话框的应用程序,但您可以按照article。
更新功能中的代码如下所示:
void CCalculatorDlg::OnUpdateButtonA(CCmdUI* pCmdUI)
{
if( m_ctrlBtnHex.GetCheck() == BST_CHECKED )
{
pCmdUI->Enable( TRUE );
}
else
{
pCmdUI->Enable( FALSE );
}
}
在你的情况下,因为A,B,C,D,E,F基本上具有相同的状态,所以你可以这样做:
void CCalculatorDlg::OnUpdateButtonA(CCmdUI* pCmdUI)
{
if( m_ctrlBtnHex.GetCheck() == BST_CHECKED) )
{
m_ctrlBtnA.EnableWindow( TRUE );
m_ctrlBtnB.EnableWindow( TRUE );
m_ctrlBtnC.EnableWindow( TRUE );
// so on...
}
else
{
m_ctrlBtnA.EnableWindow( FALSE );
m_ctrlBtnB.EnableWindow( FALSE );
m_ctrlBtnC.EnableWindow( FALSE );
// so on...
}
}
答案 2 :(得分:0)
NameOfYourButton.EnableWindow( TRUE );