// ------------------------------------------------------------------------- // 函数 : KUiSelPlayer::OnClickButton // 功能 : 响应点击按钮 // 参数 : KWndWindow* pWnd ---> 被点击的控件指针 // ------------------------------------------------------------------------- void KUiSelPlayer::OnClickButton(KWndButton* pWnd, bool bDoubleClick) { // ---> 判断点中的是那个控件 for (int i = 0; i < m_nNumPlayer; i ++) { if (pWnd == (KWndWindow*)&m_player[i]) // 点中了某个玩家信息框 { OnSelectPlayer(i, !bDoubleClick); // 如果是双击,就仿真选择用户 if (bDoubleClick) { OnEnterGame(); } return; } } if (pWnd == (KWndWindow*)&m_btnNew) OnNew(); else if (pWnd == (KWndWindow*)&m_btnCancel) OnCancel(); else if (pWnd == (KWndWindow*)&m_btnOk) OnEnterGame(); else if (pWnd == (KWndWindow*)&m_btnDel) OnDel(); }
void KUiWndFrameTabControl::OnButtonClick(int nBtnId) { switch(nBtnId) { case IDC_WND_FRAME_FOCUS_ADD_LIST: OnSelWnd(); break; case IDC_WND_FRAME_FOCUS_DEL_LIST: OnDel(); break; case IDC_WND_FRAME_FOCUS_MOVE_UP: OnMove(true); break; case IDC_WND_FRAME_FOCUS_MOVE_DOWN: OnMove(false); break; case IDC_WND_FRAME_TAB_CHANGE_FOCUS: { int nValue = (::IsDlgButtonChecked(m_hWnd, IDC_WND_FRAME_TAB_CHANGE_FOCUS) == BST_CHECKED); g_Ui.GetIni()->WriteInteger(m_szName, "EnableTabChangeFocus", nValue); g_ClientManager.UpDataWndInClient(g_Ui.GetIni(true)); ShowErrorInformation(); } break; case IDC_WND_FRAME_TAB_CHANGE_FOCUS_MOUSE_FOLLOW: { int nValue = (::IsDlgButtonChecked(m_hWnd, IDC_WND_FRAME_TAB_CHANGE_FOCUS_MOUSE_FOLLOW) == BST_CHECKED); g_Ui.GetIni()->WriteInteger(m_szName, "MouseFollowFocus", nValue); g_ClientManager.UpDataWndInClient(g_Ui.GetIni(true)); ShowErrorInformation(); } break; default: break; } }
//==============================================================================* // ---------------------------------- Dialog Procedure for Add/Edit Timers Dialog //================================================================================* INT_PTR CALLBACK DlgProcTimer(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { switch(message) { case WM_INITDIALOG: OnInit(hDlg); return TRUE; case WM_DESTROY: OnDestroy(hDlg); break; case WM_COMMAND: { WORD id = LOWORD(wParam); WORD code = HIWORD(wParam); switch(id) { case IDC_TIMERDEL: OnDel(hDlg); break; case IDOK: OnOK(hDlg); /* fall through */ case IDCANCEL: DestroyWindow(hDlg); break; case IDC_TIMERNAME: if(code==CBN_EDITCHANGE) OnTimerName(hDlg); else if(code==CBN_SELCHANGE) PostMessage(hDlg, WM_COMMAND, MAKEWPARAM(id, CBN_EDITCHANGE), lParam); break; case IDCB_STOPTIMER: OnStopTimer(hDlg); break; case IDC_TIMERSANSHO: OnSanshoAlarm(hDlg, id); break; case IDC_TIMERTEST: OnTest(hDlg, id); break; } return TRUE; } //--------------------------------------------------------------------------+++--> case WM_NOTIFY: { //========================================== BEGIN WM_NOTIFY: //----------------------------------------------------------------------------+++--> if(((NMHDR*)lParam)->code == UDN_DELTAPOS) { NMUPDOWN* lpnmud; int i; lpnmud = (NMUPDOWN*)lParam; if(lpnmud->iDelta > 0) { // User Selected the Up Arrow switch(LOWORD(wParam)) { //--+++--> on One of the Timer Controls. case IDC_TIMERSECSPIN: i = GetDlgItemInt(hDlg, IDC_TIMERSECOND, NULL, TRUE); if(i == 59) UpdateNextCtrl(hDlg, IDC_TIMERMINSPIN, IDC_TIMERMINUTE, TRUE); break; case IDC_TIMERMINSPIN: i = GetDlgItemInt(hDlg, IDC_TIMERMINUTE, NULL, TRUE); if(lpnmud->iDelta == 4) { if(i < 59) SetDlgItemInt(hDlg, IDC_TIMERMINUTE, i+1, TRUE); } if(i == 59) UpdateNextCtrl(hDlg, IDC_TIMERHORSPIN, IDC_TIMERHOUR, TRUE); break; case IDC_TIMERHORSPIN: i = GetDlgItemInt(hDlg, IDC_TIMERHOUR, NULL, TRUE); if(lpnmud->iDelta == 4) { if(i < 23) SetDlgItemInt(hDlg, IDC_TIMERHOUR, i+1, TRUE); } if(i == 23) UpdateNextCtrl(hDlg, IDC_TIMERDAYSPIN, IDC_TIMERDAYS, TRUE); break; case IDC_TIMERDAYSPIN: if(lpnmud->iDelta == 4) { i = GetDlgItemInt(hDlg, IDC_TIMERDAYS, NULL, TRUE); if(i < 7) SetDlgItemInt(hDlg, IDC_TIMERDAYS, i+1, TRUE); } break; } } else { //--+++--> User Selected the Down Arrow switch(LOWORD(wParam)) { // on One of the Timer Controls. case IDC_TIMERSECSPIN: if(lpnmud->iDelta == -4) { i = GetDlgItemInt(hDlg, IDC_TIMERSECOND, NULL, TRUE); if(i > 0) SetDlgItemInt(hDlg, IDC_TIMERSECOND, i -1, TRUE); } break; case IDC_TIMERMINSPIN: i = GetDlgItemInt(hDlg, IDC_TIMERMINUTE, NULL, TRUE); if(lpnmud->iDelta == -4) { if(i > 0) SetDlgItemInt(hDlg, IDC_TIMERMINUTE, i -1, TRUE); } if(i == 0) UpdateNextCtrl(hDlg, IDC_TIMERSECSPIN, IDC_TIMERSECOND, FALSE); break; case IDC_TIMERHORSPIN: i = GetDlgItemInt(hDlg, IDC_TIMERHOUR, NULL, TRUE); if(lpnmud->iDelta == -4) { if(i > 0) SetDlgItemInt(hDlg, IDC_TIMERHOUR, i -1, TRUE); } if(i == 0) UpdateNextCtrl(hDlg, IDC_TIMERMINSPIN, IDC_TIMERMINUTE, FALSE); break; case IDC_TIMERDAYSPIN: i = GetDlgItemInt(hDlg, IDC_TIMERDAYS, NULL, TRUE); if(i == 0) UpdateNextCtrl(hDlg, IDC_TIMERHORSPIN, IDC_TIMERHOUR, FALSE); break; } } } //----------------------------------------------------------------------------+++--> return TRUE; //=============================================== END WM_NOTIFY: } //----------------------------------------------------------------------+++--> case MM_MCINOTIFY: case MM_WOM_DONE: StopFile(); SendDlgItemMessage(hDlg, IDC_TIMERTEST, BM_SETIMAGE, IMAGE_ICON, (LPARAM)g_hIconPlay); return TRUE; } return FALSE; }