Exemplo n.º 1
0
//按下设置键
void COptionDlg::OnBnClickedOptiondlgOk()
{
	int b1 = m_AutoRun.GetCheck();
	int b2 = m_RelePas.GetCheck();
	bool bAutoRun = b1 == BST_CHECKED ? true : false;
	bool bRele = b2 == BST_CHECKED ? true : false;
	CPassManagerDlg * p = (CPassManagerDlg *)GetParent();
	if (bInitAuto != bAutoRun)
	{
		SetAutoRun(bAutoRun);
		p->OnSonDlgClose(m_errStr);
	}
	if (bInitRele != bRele)
	{
		SetFileRele(bRele);
		p->OnSonDlgClose(m_errStr);
	}	
	OnOK();
}
Exemplo n.º 2
0
// Message handler for Dialog
INT_PTR CALLBACK DlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
	if (message == RegisterWindowMessage(L"TaskbarCreated") && !IsWindowVisible(hDlg))
	{
		Minimize(hDlg);
		return (INT_PTR)TRUE;
	}

	TCHAR buffer[MAX_LOADSTRING];
	INT tmp;

	switch (message)
	{
	case WM_INITDIALOG:
		OnInitDlg(hDlg);
		InstallCtrlMouseHook(hDlg);
		InstallHook_Draw(hDlg);
		SetNumTimeReplay(REPLAYTIME);
		//Set Icon for Dialog
		SendMessage(hDlg, WM_SETICON, ICON_SMALL, (LPARAM)LoadIcon(hInst, MAKEINTRESOURCE(IDI_ICON1)));
		SendMessage(hDlg, WM_SETICON, ICON_BIG, (LPARAM)LoadIcon(hInst, MAKEINTRESOURCE(IDI_ICON1)));
		return (INT_PTR)TRUE;

	case WM_COMMAND:
		switch (LOWORD(wParam))
		{
		case IDOK:
			DestroyWindow(hDlg);
			return (INT_PTR)TRUE;
		case IDC_BUTTONAPPLY:
			UpdateData(DIRECTION, BUTTON, SPEED);
			SetNumTimeReplay(REPLAYTIME);
			EnableWindow(GetDlgItem(hMainDlg, IDC_BUTTONAPPLY), FALSE);
			Minimize(hDlg);
			SaveSettings();
			return (INT_PTR)TRUE;
		case IDC_AUTORUN:
			if (Button_GetCheck(GetDlgItem(hDlg, IDC_AUTORUN)))
				SetAutoRun(), AUTORUN = 1, SaveSettings();
			else
				OffAutoRun(), AUTORUN = 0, SaveSettings();
			break;
		case IDC_EDITSPEED:
			if (HIWORD(wParam) != EN_CHANGE)
				break;
			Edit_GetText(GetDlgItem(hDlg, IDC_EDITSPEED), buffer, MAX_LOADSTRING);
			tmp = _wtoi(buffer);
			if (tmp > 0 && tmp <= 10000000)
				EnableWindow(GetDlgItem(hMainDlg, IDC_BUTTONAPPLY), TRUE), SPEED = tmp;
			else
				EnableWindow(GetDlgItem(hMainDlg, IDC_BUTTONAPPLY), FALSE);
			return (INT_PTR)TRUE;
		case IDC_EDITREPLAY:
			if (HIWORD(wParam) != EN_CHANGE)
				break;
			Edit_GetText(GetDlgItem(hDlg, IDC_EDITREPLAY), buffer, MAX_LOADSTRING);
			tmp = _wtoi(buffer);
			if (tmp > 0 && tmp <= 10000000)
				EnableWindow(GetDlgItem(hMainDlg, IDC_BUTTONAPPLY), TRUE), REPLAYTIME = tmp;
			else
				EnableWindow(GetDlgItem(hMainDlg, IDC_BUTTONAPPLY), FALSE);
		}
		break;
	case WM_KEYDOWN:
		if (wParam == VK_CONTROL && active)
			if (!draw) {
				hWndDraw = CreateWindow(L"WindowDraw", NULL, WS_OVERLAPPEDWINDOW,
					CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInst, NULL);

				SetWindowPos(hWndDraw, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
				draw = TRUE;
				GetHWND(hWndDraw);

				SetWindowLong(hWndDraw, GWL_EXSTYLE, GetWindowLong(hWndDraw, GWL_EXSTYLE) | WS_EX_LAYERED);
				SetLayeredWindowAttributes(hWndDraw, 0, 255, LWA_ALPHA);

				RECT rect;
				SetWindowPos(hWndDraw, NULL, 0, 0, GetDeviceCaps(GetDC(NULL), HORZRES), GetDeviceCaps(GetDC(NULL), VERTRES), SWP_FRAMECHANGED);
				GetWindowRect(hWndDraw, &rect);
				HRGN hrgn;
				hrgn = CreateRectRgn(0, 32, GetDeviceCaps(GetDC(NULL), HORZRES), GetDeviceCaps(GetDC(NULL), VERTRES) - 32);
				SetWindowRgn(hWndDraw, hrgn, true);

				ShowWindow(hWndDraw, SW_MAXIMIZE);
			}
			else {
				ShowWindow(hWndDraw, SW_HIDE);
				draw = FALSE;
				hWndDraw = NULL;
			}
		break;
	case WM_CLOSE:
		Minimize(hDlg);
		active = TRUE;
		return (INT_PTR)TRUE;
	case WM_TRAYICON:
		if (wParam == TRAY_ICON_ID && lParam == WM_LBUTTONUP){
			Restore(hDlg);
			active = FALSE;
		}
		return (INT_PTR)TRUE;

	case WM_DESTROY:
		UninstallCtrlMouseHook();
		UninstallHook_Draw();
		PostQuitMessage(0);
		return (INT_PTR)TRUE;
	}
	return (INT_PTR)FALSE;
}
Exemplo n.º 3
0
void CpermoDlg::OnRButtonDown(UINT nFlags, CPoint point)
{
	// TODO:  在此添加消息处理程序代码和/或调用默认值
	CPoint p;
	//传递过来的坐标为相对于窗口左上角的坐标,WM_CONTEXTMENU传递过来的是屏幕坐标
	GetCursorPos(&p);//鼠标点的屏幕坐标
	m_Menu.CheckMenuItem(SelectedInterface + START_INDEX, MF_BYCOMMAND | MF_CHECKED); 
	int nID = m_Menu.TrackPopupMenu(TPM_LEFTALIGN | TPM_RETURNCMD, p.x, p.y, this);
	switch (nID)
	{
	case IDM_TOPMOST:
		OnTopmost();
		break;
	case IDM_GREEN:
		OnGreen();
		break;
	case IDM_BLUE:
		OnBlue();
		break;
	case IDM_BLACK:
		OnBlack();
		break;
	case IDM_RED:
		OnRed();
		break;
	case IDM_ORANGE:
		OnOrange();
		break;
	case IDM_EXIT:
		OnExit();
		break;
	case IDM_AUTOHIDE:
		OnAutoHide();
		break;
	case IDM_SHOWBYHOVER:
		SetShowWay();
		break;
	case IDM_SHOWBYLDOWN:
		SetShowWay();
		break;
	case IDM_TRANS0:
		OnTrans0();
		break;
	case IDM_TRANS10:
		OnTrans10();
		break;
	case IDM_TRANS20:
		OnTrans20();
		break;
	case IDM_TRANS30:
		OnTrans30();
		break;
	case IDM_TRANS40:
		OnTrans40();
		break;
	case IDM_TRANS50:
		OnTrans50();
		break;
	case IDM_TRANS60:
		OnTrans60();
		break;
	case IDM_TRANS70:
		OnTrans70();
		break;
	case IDM_TRANS80:
		OnTrans80();
		break;
	case IDM_TRANS90:
		OnTrans90();
		break;
	case IDM_FONTSIZE12:
		SetFontSize(12);
		break;
	case IDM_FONTSIZE13:
		SetFontSize(13);
		break;
	case IDM_FONTSIZE14:
		SetFontSize(14);
		break;
	case IDM_FONTSIZE15:
		SetFontSize(15);
		break;
	case IDM_FONTSIZE16:
		SetFontSize(16);
		break;
	case IDM_FONTSIZE17:
		SetFontSize(17);
		break;
	case IDM_FONTSIZE18:
		SetFontSize(18);
		break;
	case IDM_AUTOSTART:
		SetAutoRun();
		break;
	case IDM_SHOWNETINFO:
		ShowNetInfo();
		break;
	case 0:
		return;
	default:
		{m_Menu.CheckMenuItem(SelectedInterface + START_INDEX, MF_BYCOMMAND | MF_UNCHECKED);
		SelectedInterface = nID - START_INDEX; }
		break;
	}

	CDialog::OnRButtonDown(nFlags, point);
}