コード例 #1
0
ファイル: EpgTimerTaskDlg.cpp プロジェクト: ACUVE/EDCB
void CEpgTimerTaskDlg::OnBnClickedButtonS4()
{
	// TODO: ここにコントロール通知ハンドラ コードを追加します。
	CSendCtrlCmd cmd;
	if(cmd.SendChkSuspend() != 1 ){
		MessageBox(L"休止に移行できる状態ではありません。\r\n(もうすぐ予約が始まる。または抑制条件のexeが起動している。など)");
	}else{
		cmd.SendSuspend(0xFF02);
	}
}
コード例 #2
0
ファイル: EpgTimerTaskDlg.cpp プロジェクト: ACUVE/EDCB
LRESULT CEpgTimerTaskDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
	// TODO: ここに特定なコードを追加するか、もしくは基本クラスを呼び出してください。
	switch(message){
		case WM_TRAY_PUSHICON:
			{
				//タスクトレイ関係
				switch(LOWORD(lParam)){
					case WM_RBUTTONDOWN:
						{
							CMenu menu;
							CPoint point;
							menu.LoadMenu(IDR_MENU_TRAY);
							CMenu* pPopup = menu.GetSubMenu(0);

							GetCursorPos(&point);
							SetForegroundWindow();
							pPopup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, AfxGetMainWnd());
							pPopup->DestroyMenu();
						}
						break;
					default :
						break ;
					}
			}
			break;
		case WM_QUERY_SUSPEND:
			{
				CQueryWaitDlg cDlg;
				if( cDlg.DoModal() != IDCANCEL ){
					CSendCtrlCmd cmd;
					cmd.SendSuspend((WORD)wParam);
				}
			}
			break;
		case WM_QUERY_REBOOT:
			{
				CQueryWaitDlg cDlg;
				cDlg.SetRebootMode();
				if( cDlg.DoModal() != IDCANCEL ){
					CSendCtrlCmd cmd;
					cmd.SendReboot();
				}
			}
			break;
		default:
			break;
	}

	return CDialogEx::WindowProc(message, wParam, lParam);
}