| How to change the Text of a CButton at Runtime? |
CButton *btnsample= (CButton
*)GetDlgItem(IDC_BUTTON1); //suppose IDC_BUTTON1 is the ID of CButton
btnsample->SetWindowText(_T("Lahore"));
|
| How to change the Size of CButton at Runtime? |
CButton *btnsample = (CButton *)GetDlgItem(IDC_BUTTON1);///suppose
IDC_BUTTON1 is the ID of CButton/
btnsample->SetWindowPos(0,0,0,100,100,SWP_FRAMECHANGED);
|
| How to Enable and Disable CButton at runtime? |
CButton *btnsample = (CButton *)GetDlgItem(IDC_BUTTON1);
btnsample->EnableWindow(FALSE); // To Disable a button
btnsample->EnableWindow(TRUE); //To Enable a Button
|
| How to load an Icon on a CButton at Runtime? |
CButton *btnsample = (CButton *)GetDlgItem(IDC_BUTTON1);
btnsample->ModifyStyle(0,BS_ICON,SWP_FRAMECHANGED); //change the style of
CButton
HICON hIcon = ::LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ICON));
//load an Icon assuming IDI_ICON is ID of ICON
btnsample->SetIcon(hIcon); |
| How to change the position of Button at
runtime |
Assuming that you have set the button's ID as IDC_BTNSAMPLE
in the resource editor :-
CButton *pBtnSample = (CButton *)GetDlgItem(IDC_BTNSAMPLE);
pBtnSample->SetWindowPos(0,0,0,100,100,SWP_FRAMECHANGED); |
| How to change the Properties of a Button at
runtime? |
Assuming that you have set the button's ID as IDC_BTNSAMPLE
in the resource editor :-
We have to use the ModifyStyle Function to do this. The function is defined as
follows :-
CButton *pBtnSample = (CButton *)GetDlgItem(IDC_BTNSAMPLE); //
Make the button look like a checkbox
pBtnSample->ModifyStyle(0,BS_AUTOCHECKBOX,SWP_FRAMECHANGED);
// Remove the checkbox style and make it again normal
pBtnSample->ModifyStyle(BS_AUTOCHECKBOX,0,SWP_FRAMECHANGED); |
| How to change the Mouse Pointer Over a Button
at runtime? |
Assuming that you have set the button's ID as IDC_BTNSAMPLE
in the resource editor :-
// You have to handle the WM_SETCURSOR message handler to do that
BOOL CTestDlg::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{
if (pWnd == GetDlgItem(IDC_BTNSAMPLE))
{ // To load a standard cursor
::SetCursor(AfxGetApp()->LoadStandardCursor(IDC_CROSS));
// To load your own custom cursor. Assuming that you have
created a
// Cursor in the resource editor and named it as
IDC_CURSAMPLE
::SetCursor(AfxGetApp()->LoadCursor(MAKEINTRESOURCE(IDC_CURSAMPLE)));
// Remember to return TRUE here return TRUE;
}
return CDialog::OnSetCursor(pWnd, nHitTest, message);
} |