Beispiel #1
0
// -------------------------------------------------------------------------
// 函数		: 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();
}
Beispiel #2
0
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;
	}

}
Beispiel #3
0
//==============================================================================*
// ---------------------------------- 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;
}