1、上位机软件界面
图片即展示上位机软件主界面,并附相关说明。
- 主菜单按钮下对应的功能子菜单
a)、单击主菜单按钮,并在指定位置显示弹出式菜单:
void CWifiCtrlDlg::OnStnClickedMain()
{
CMenu* pContextMenu = menu_Main.GetSubMenu(0);//获取弹出菜单的第一项,所以菜单必须有子菜单
RECT rect;
GetWindowRect(&rect);
pContextMenu ->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON,
rect.left,
rect.top + 30,
AfxGetMainWnd());//在指定位置显示弹出菜单
}
说明:menu_Main,在WifiCtrlDlg.h头文件中定义成公共成员变量,方便需要用到它的函数访问、操作。
CMenu menu_Main;//定义要用到的CMenu对象
b)、菜单项——是否开机启动:
根据BootChk_Flag变量与IsAutoBoot()函数的返回值来判断是否为菜单项“是否开机启动”增加选中标记或移除选中标记。
void CWifiCtrlDlg::OnBoot()
{
CMenu* pContextMenu = menu_Main.GetSubMenu(0);
if(!BootChk_Flag && !IsAutoBoot())//!IsAutoBoot()表示没有设置开机启动
{
pContextMenu ->CheckMenuItem(ID_BOOT,MF_BYCOMMAND | MF_CHECKED);
AutoBootSet();
BootChk_Flag = TRUE;
}
else
{
pContextMenu ->CheckMenuItem(ID_BOOT,MF_BYCOMMAND | MF_UNCHECKED);
AutoBootCancel();//取消开机自启动
BootChk_Flag = FALSE;
}
}
说明:BootChk_Flag,是否开机启动标志变量,布尔型,在WifiCtrlDlg.h头文件中定义成公共成员变量,初始化为FALSE。此标志用于判断是否勾选了开机自启动菜单项,类似于Checkbox控件的状态值。
bool BootChk_Flag;
- 2.