CheckRadioButton()
功能:
该函数给一组单选按钮中的一个指定按钮加上选中标志,并且清除组中其他按钮的选中标志。(这几个单选按钮的标识符最好是连续的,而且是互斥的。)
语法:
BOOL CheckDlgButton(
HWND hDlg,
int nlDButton,
UINT uCheck );
HWND hDlg,
int nlDButton,
UINT uCheck );
hDlg:指向含有该按钮的对话框的句柄。
nlDButton:标识要修改的按钮。
uCheck:给定该按钮的选中状态。该参数可取下列值,这些值的含义如下:
BST_CHECKED:设置按钮状态为己选中(checked)。
BST_INDETERMINATE:设置按钮状态变灰,表示不确定状态。只有在该按钮具有BS_3STATE或BS_AUTO3STATE样式时才能使用该值。
BST_UNCHECKED:设置按钮为未选中状态(unchecked)。
返回:
·函数执行成功时,返回非零
·函数执行失败,返回 0 值
若想获取更多错误信息,请调用GetLastError函数。
速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;头文件:winuser.h;库文件:user32.lib。
实例:
![ContractedBlock.gif](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
![ExpandedBlockStart.gif](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
void
ShowFuncSet(HWND hwnd,
char
*
pszFileName,
char
*
szType)
{
int i;
DWORD dwRet;
WCHAR wszCode[ 100 ];
char szRet[ 60 ];
char * szFunc[ 12 ] = { " [F1] " , " [F2] " , " [F3] " , " [F4] " , " [F5] " , " [F6] " , " [F7] " , " [F8] " , " [F9] " , " [F0] " , " [*] " , " [#] " };
int szCHECK[ 12 ] = {IDC_CHECKF1,IDC_CHECKF2,IDC_CHECKF3,IDC_CHECKF4,IDC_CHECKF5,IDC_CHECKF6,IDC_CHECKF7,IDC_CHECKF8,IDC_CHECKF9,IDC_CHECKF0,IDC_CHECKF11,IDC_CHECKF12};
int szEDIT[ 12 ] = {IDC_EDITF1,IDC_EDITF2,IDC_EDITF3,IDC_EDITF4,IDC_EDITF5,IDC_EDITF6,IDC_EDITF7,IDC_EDITF8,IDC_EDITF9,IDC_EDITF0,IDC_EDITF11,IDC_EDITF12};
for (i = 0 ;i < 10 ;i ++ )
{
memset(szRet, 0 , sizeof (szRet));
memset(wszCode, 0 , sizeof (wszCode));
{
int i;
DWORD dwRet;
WCHAR wszCode[ 100 ];
char szRet[ 60 ];
char * szFunc[ 12 ] = { " [F1] " , " [F2] " , " [F3] " , " [F4] " , " [F5] " , " [F6] " , " [F7] " , " [F8] " , " [F9] " , " [F0] " , " [*] " , " [#] " };
int szCHECK[ 12 ] = {IDC_CHECKF1,IDC_CHECKF2,IDC_CHECKF3,IDC_CHECKF4,IDC_CHECKF5,IDC_CHECKF6,IDC_CHECKF7,IDC_CHECKF8,IDC_CHECKF9,IDC_CHECKF0,IDC_CHECKF11,IDC_CHECKF12};
int szEDIT[ 12 ] = {IDC_EDITF1,IDC_EDITF2,IDC_EDITF3,IDC_EDITF4,IDC_EDITF5,IDC_EDITF6,IDC_EDITF7,IDC_EDITF8,IDC_EDITF9,IDC_EDITF0,IDC_EDITF11,IDC_EDITF12};
for (i = 0 ;i < 10 ;i ++ )
{
memset(szRet, 0 , sizeof (szRet));
memset(wszCode, 0 , sizeof (wszCode));
//访问INI文件获取配置
dwRet = GetIniValue(szFunc[i],szType, "" ,szRet, sizeof (szRet),pszFileName);
dwRet = GetIniValue(szFunc[i],szType, "" ,szRet, sizeof (szRet),pszFileName);
if (dwRet > 0 )
{
::mbstowcsz(wszCode,szRet,strlen(szRet));
SetDlgItemText(hwnd,szEDIT[i],wszCode);
::CheckDlgButton(hwnd,szCHECK[i],BST_CHECKED);
}
else
{
SetDlgItemText(hwnd,szEDIT[i],wszCode); // 清空EDIT
::CheckDlgButton(hwnd,szCHECK[i],BST_UNCHECKED);
}
}
}