亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? winmain.cpp

?? 還是電子鐘的 匯編程序 不過有詳細(xì)的電路圖和文檔
?? CPP
字號(hào):
#include <Windows.h>
#include <cmath>
#include "resource.h"

#define CLOCK_SIZE 150
#define ID_TIMER 1

HINSTANCE hInst;
HMENU hPopupMenu;
HCURSOR hCursor;
HCURSOR hCursorGrab;
HDC hDCBack,hDCClock;
HBITMAP hBmpBack,hBmpClock;
int IDBack,IDCirle,IDMask;

class CLOCKPARAM
{
public:
	LONG lClockX;
	LONG lClockY;
	CLOCKPARAM(){};
	VOID Calculate(HWND hWnd)
	{
		RECT stRect;
		GetClientRect(hWnd,&stRect);
		lClockX=(stRect.left+stRect.right)/2;
		lClockY=(stRect.top+stRect.bottom)/2;
	};
	~CLOCKPARAM(){};
}stClockParam;

LRESULT CALLBACK WndProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam);
VOID CreateBackGround(HWND hWnd);
VOID CreateClockPic(HWND hWnd);
VOID DrawLine(HDC hDC,int iDegree,int iLineWith,int iDeLong);


int WINAPI WinMain( __in HINSTANCE hInstance, __in_opt HINSTANCE hPrevInstance, __in_opt LPSTR lpCmdLine, __in int nShowCmd )
{
	hPopupMenu=LoadMenu(hInstance,MAKEINTRESOURCE(IDR_MENU1));
	hPopupMenu=GetSubMenu(hPopupMenu,0);
	hCursor=LoadCursor(hInstance,MAKEINTRESOURCE(IDC_CURSOR1));
	hCursorGrab=LoadCursor(hInstance,MAKEINTRESOURCE(IDC_CURSOR2));
	hInst=hInstance;

	HICON hIcon;
	HWND hWnd;
	MSG msg;

	hIcon=LoadIcon(hInstance,MAKEINTRESOURCE(IDI_ICON1));
	WCHAR szClsName[]=TEXT("class1");

	WNDCLASSEX stWndCls;
	stWndCls.cbClsExtra=0;
	stWndCls.cbWndExtra=0;
	stWndCls.lpszMenuName=NULL;
	stWndCls.cbSize=sizeof(stWndCls);
	stWndCls.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
	stWndCls.hCursor=hCursor;
	stWndCls.hIcon=hIcon;
	stWndCls.hIconSm=hIcon;
	stWndCls.hInstance=hInstance;
	stWndCls.lpfnWndProc=WndProc;
	stWndCls.lpszClassName=szClsName;
	stWndCls.style=CS_HREDRAW|CS_VREDRAW;
	RegisterClassEx(&stWndCls);

	hWnd=CreateWindowEx(0,szClsName,TEXT("主窗口"),WS_POPUP|WS_SYSMENU,240,180
		,CLOCK_SIZE,CLOCK_SIZE,NULL,NULL,hInstance,NULL);
	ShowWindow(hWnd,SW_NORMAL);
	UpdateWindow(hWnd);

	HACCEL hAccel=LoadAccelerators(hInstance,MAKEINTRESOURCE(IDR_ACCELERATOR1));
	while (GetMessage(&msg,NULL,0,0))
	{
		if (!TranslateAccelerator(hWnd,hAccel,&msg))
		{
			TranslateMessage(&msg);
			DispatchMessage(&msg);
		}
	}
}

LRESULT CALLBACK WndProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
	POINT stPoint;
	int wmID;
	HDC hDC;
	PAINTSTRUCT stPs;

	switch (uMsg)
	{
	case WM_TIMER:
		CreateClockPic(hWnd);
		InvalidateRect(hWnd,NULL,false);
		break;
	case WM_PAINT:
		hDC=BeginPaint(hWnd,&stPs);
		BitBlt(hDC,0,0,CLOCK_SIZE,CLOCK_SIZE,hDCClock,0,0,SRCCOPY);
		EndPaint(hWnd,&stPs);
		break;
	case WM_COMMAND:
		wmID=LOWORD(wParam);
		switch (wmID)
		{
		case ID_BACK1:
			CheckMenuRadioItem(hPopupMenu,ID_BACK1,ID_BACK2,ID_BACK1,MF_BYCOMMAND);
			IDBack=IDB_BACK1;
			CreateBackGround(hWnd);
			InvalidateRect(hWnd,NULL,false);
			break;
		case ID_BACK2:
			CheckMenuRadioItem(hPopupMenu,ID_BACK1,ID_BACK2,ID_BACK2,MF_BYCOMMAND);
			IDBack=IDB_BACK2;
			CreateBackGround(hWnd);
			InvalidateRect(hWnd,NULL,false);
			break;
		case ID_CIRCLE1:
			CheckMenuRadioItem(hPopupMenu,ID_CIRCLE1,ID_CIRCLE2,ID_CIRCLE1,MF_BYCOMMAND);
			IDCirle=IDB_CIRCLE1;
			IDMask=IDB_MASK1;
			CreateBackGround(hWnd);
			InvalidateRect(hWnd,NULL,false);
			break;
		case ID_CIRCLE2:
			CheckMenuRadioItem(hPopupMenu,ID_CIRCLE1,ID_CIRCLE2,ID_CIRCLE2,MF_BYCOMMAND);
			IDCirle=IDB_CIRCLE2;
			IDMask=IDB_MASK2;
			CreateBackGround(hWnd);
			InvalidateRect(hWnd,NULL,false);
			break;
		case ID_EXIT:
			SendMessage(hWnd,WM_CLOSE,NULL,NULL);
			break;
		}
		break;
	case WM_RBUTTONDOWN:
		GetCursorPos(&stPoint);
		TrackPopupMenu(hPopupMenu,TPM_LEFTALIGN,stPoint.x,stPoint.y,NULL,hWnd,NULL);
		break;
	case WM_LBUTTONDOWN:
		SetCursor(hCursorGrab);
		SendMessage(hWnd,WM_NCLBUTTONDOWN,HTCAPTION,NULL);
		SetCursor(hCursor);
		break;
	case WM_CREATE:
		RECT stRect;
		GetClientRect(hWnd,&stRect);
		HRGN hRgn;
		hRgn=CreateEllipticRgnIndirect(&stRect);
		SetWindowRgn(hWnd,hRgn,1);
		DeleteObject(hRgn);
		SetWindowPos(hWnd,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
		hDC=GetDC(hWnd);
		hDCBack=CreateCompatibleDC(hDC);
		hDCClock=CreateCompatibleDC(hDC);
		hBmpBack=CreateCompatibleBitmap(hDC,CLOCK_SIZE,CLOCK_SIZE);
		hBmpClock=CreateCompatibleBitmap(hDC,CLOCK_SIZE,CLOCK_SIZE);
		SelectObject(hDCBack,hBmpBack);
		SelectObject(hDCClock,hBmpClock);
		ReleaseDC(hWnd,hDC);
		IDBack=IDB_BACK1;
		IDCirle=IDB_CIRCLE1;
		IDMask=IDB_MASK1;
		CheckMenuRadioItem(hPopupMenu,ID_BACK1,ID_BACK2,ID_BACK1,MF_BYCOMMAND);
		CheckMenuRadioItem(hPopupMenu,ID_CIRCLE1,ID_CIRCLE2,ID_CIRCLE1,MF_BYCOMMAND);
		CreateBackGround(hWnd);
		CreateClockPic(hWnd);
		InvalidateRect(hWnd,NULL,false);
		SetTimer(hWnd,ID_TIMER,1000,NULL);
		break;
	case WM_CLOSE:
		KillTimer(hWnd,ID_TIMER);
		DestroyWindow(hWnd);
		PostQuitMessage(0);
		break;
	default:
		return DefWindowProc(hWnd,uMsg,wParam,lParam);
	}
	return 0;
}

VOID CreateBackGround(HWND hWnd)
{
	HDC hDc,hDcTemp;
	HBITMAP hBmp;
	HGDIOBJ hGdiObj;

	hDc=GetDC(hWnd);
	hDcTemp=CreateCompatibleDC(hDc);
	ReleaseDC(hWnd,hDc);

	hBmp=LoadBitmap(hInst,MAKEINTRESOURCE(IDBack));
	hGdiObj=CreatePatternBrush(hBmp);
	hGdiObj=SelectObject(hDCBack,hGdiObj);
	PatBlt(hDCBack,0,0,CLOCK_SIZE,CLOCK_SIZE,PATCOPY);
	DeleteObject(hGdiObj);

	hBmp=LoadBitmap(hInst,MAKEINTRESOURCE(IDMask));
	hGdiObj=SelectObject(hDcTemp,hBmp);
	BitBlt(hDCBack,0,0,CLOCK_SIZE,CLOCK_SIZE,hDcTemp,0,0,SRCAND);
	DeleteObject(hGdiObj);

	hBmp=LoadBitmap(hInst,MAKEINTRESOURCE(IDCirle));
	hGdiObj=SelectObject(hDcTemp,hBmp);
	BitBlt(hDCBack,0,0,CLOCK_SIZE,CLOCK_SIZE,hDcTemp,0,0,SRCPAINT);
	DeleteObject(hGdiObj);

	DeleteDC(hDcTemp);
	DeleteObject(hBmp);
}

VOID CreateClockPic(HWND hWnd)
{
	BitBlt(hDCClock,0,0,CLOCK_SIZE,CLOCK_SIZE,hDCBack,0,0,SRCCOPY);
	stClockParam.Calculate(hWnd);
	SYSTEMTIME stSysTime;
	GetLocalTime(&stSysTime);
	HGDIOBJ hGdiObj;
	hGdiObj=CreatePen(PS_SOLID,1,BLACK_PEN);
	hGdiObj=SelectObject(hDCClock,hGdiObj);
	DeleteObject(hGdiObj);
	DrawLine(hDCClock,stSysTime.wSecond*360/60,1,5);
	hGdiObj=CreatePen(PS_SOLID,2,BLACK_PEN);
	hGdiObj=SelectObject(hDCClock,hGdiObj);
	DeleteObject(hGdiObj);
	DrawLine(hDCClock,stSysTime.wMinute*360/60,1,10);
	hGdiObj=CreatePen(PS_SOLID,3,BLACK_PEN);
	hGdiObj=SelectObject(hDCClock,hGdiObj);
	DeleteObject(hGdiObj);
	DrawLine(hDCClock,stSysTime.wHour*360/12+stSysTime.wMinute/2,1,15);
}

VOID DrawLine(HDC hDC,int iDegree,int iLineWith,int iDeLong)
{
	LONG x,y,x0,y0;
	x=(LONG)(stClockParam.lClockX+(CLOCK_SIZE/2-10-iDeLong)*sin(iDegree*3.1415926/180));
	x0=(LONG)(stClockParam.lClockX-10*sin(iDegree*3.1415926/180));
	y=(LONG)(stClockParam.lClockY-(CLOCK_SIZE/2-10-iDeLong)*cos(iDegree*3.1415926/180));
	y0=(LONG)(stClockParam.lClockY+10*cos(iDegree*3.1415926/180));
	MoveToEx(hDC,x0,y0,NULL);
	LineTo(hDC,x,y);
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
奇米影视7777精品一区二区| 午夜精品视频一区| 欧美精品在欧美一区二区少妇| 日韩电影在线观看电影| 中文字幕巨乱亚洲| 91精品国产综合久久精品麻豆 | 亚洲乱码中文字幕| 精品欧美黑人一区二区三区| 91福利视频在线| 国产麻豆精品95视频| 日韩高清在线电影| 中文字幕一区二区三区在线观看| 日韩一区国产二区欧美三区| 一本久久精品一区二区| 国产精品亚洲一区二区三区在线| 亚洲国产欧美一区二区三区丁香婷| 久久精品在线免费观看| 欧美一级淫片007| 日本韩国精品在线| 国产成人亚洲精品青草天美| 麻豆专区一区二区三区四区五区| 一区二区三区日本| 亚洲婷婷综合久久一本伊一区| 久久综合色之久久综合| 日韩一级免费一区| 欧美日韩国产高清一区| 在线免费观看不卡av| 不卡的电影网站| 成人精品小蝌蚪| 国产激情91久久精品导航| 久久疯狂做爰流白浆xx| 日韩福利视频导航| 国产精品一区在线观看乱码| 日产欧产美韩系列久久99| 亚洲综合色自拍一区| 亚洲日韩欧美一区二区在线| 国产精品污污网站在线观看| 久久精品亚洲国产奇米99| 欧美va亚洲va香蕉在线| 日韩欧美亚洲国产另类| 日韩一区二区精品在线观看| 69堂亚洲精品首页| 91精品国产综合久久久蜜臀粉嫩 | 在线日韩国产精品| 日本道在线观看一区二区| 99国产精品国产精品毛片| 99视频精品免费视频| 成人av第一页| 色www精品视频在线观看| 91浏览器打开| 精品1区2区3区| 欧美群妇大交群中文字幕| 91麻豆精品国产无毒不卡在线观看 | 国产综合久久久久久鬼色| 美女一区二区视频| 国产资源精品在线观看| 高清视频一区二区| 一本高清dvd不卡在线观看| 91国内精品野花午夜精品| 欧美婷婷六月丁香综合色| 欧美片在线播放| 精品三级在线看| 国产亚洲欧美一区在线观看| 亚洲国产精品成人久久综合一区| 亚洲色图欧美在线| 亚洲国产成人porn| 精品一区二区三区久久| 国产成人av电影在线观看| 99精品视频免费在线观看| 欧洲日韩一区二区三区| 91精品国产91久久综合桃花| 亚洲精品一区二区三区在线观看 | 久久精品国产网站| 岛国精品在线观看| 色综合久久99| 欧美二区三区的天堂| 2020国产精品自拍| 国产精品久久久久一区| 亚洲成av人片www| 国产乱一区二区| 91麻豆123| 精品久久国产97色综合| 中文字幕视频一区| 日本v片在线高清不卡在线观看| 国产美女视频91| 欧美性大战久久| 久久精品视频免费| 亚洲一区二区在线免费看| 国内精品久久久久影院色| 一本到不卡精品视频在线观看| 欧美乱妇20p| 中文久久乱码一区二区| 日韩高清国产一区在线| 不卡av在线免费观看| 欧美精品亚洲一区二区在线播放| 久久精品人人做人人爽人人| 天天色综合成人网| 成人夜色视频网站在线观看| 欧美精品在线一区二区| 亚洲天堂成人网| 国产一区二区三区免费播放| 欧美日韩国产色站一区二区三区| 久久精品一区二区三区四区| 香蕉久久一区二区不卡无毒影院| 国产成人综合网站| 91精品国产91久久久久久一区二区 | 99久久久免费精品国产一区二区 | 欧美va亚洲va香蕉在线| 亚洲香蕉伊在人在线观| 不卡电影一区二区三区| 久久婷婷成人综合色| 亚洲第一狼人社区| 一本色道**综合亚洲精品蜜桃冫| 久久久午夜精品理论片中文字幕| 成人h动漫精品| 日韩一卡二卡三卡四卡| 亚洲午夜在线视频| 91在线精品一区二区三区| 久久精品一区蜜桃臀影院| 日本亚洲欧美天堂免费| 色av一区二区| 亚洲欧美激情小说另类| 国产99久久久国产精品潘金| 日韩欧美精品在线| 亚洲在线视频网站| 91成人在线免费观看| 国产精品视频一二| 国产·精品毛片| 久久影院电视剧免费观看| 免费成人在线影院| 欧美精品在线一区二区三区| 亚洲福利一区二区三区| 欧美视频一区二区三区四区 | 日韩欧美电影一区| 日本不卡一二三| 欧美高清视频不卡网| 亚洲一区二区三区在线看| 91精品国产综合久久精品图片 | 久久久91精品国产一区二区精品 | 日韩欧美高清dvd碟片| 美脚の诱脚舐め脚责91| 91精品国产色综合久久久蜜香臀| 亚洲成人精品在线观看| 欧美日韩不卡一区二区| 日韩电影在线观看电影| 日韩亚洲国产中文字幕欧美| 麻豆精品新av中文字幕| 精品国精品自拍自在线| 国产激情一区二区三区桃花岛亚洲| 久久嫩草精品久久久久| 国产suv精品一区二区883| 国产精品美日韩| 在线免费观看不卡av| 亚洲第一福利视频在线| 91精品久久久久久久99蜜桃| 捆绑调教一区二区三区| 国产欧美日产一区| 99视频精品免费视频| 一区二区三区不卡视频 | 国产精品成人在线观看| 91久久精品日日躁夜夜躁欧美| 一区二区三区中文在线| 欧美日韩国产一二三| 麻豆成人综合网| 国产精品系列在线| 欧美日韩专区在线| 久久疯狂做爰流白浆xx| 国产嫩草影院久久久久| 色哟哟一区二区在线观看| 视频一区欧美日韩| 国产欧美日韩中文久久| 欧洲另类一二三四区| 国内精品伊人久久久久av影院| 中文字幕日韩一区二区| 在线不卡欧美精品一区二区三区| 国产乱人伦偷精品视频不卡| 亚洲精品中文在线影院| 精品日韩欧美一区二区| 99久久免费视频.com| 蜜桃视频在线观看一区| 国产精品国产三级国产aⅴ原创| 欧美日韩国产高清一区二区三区| 国产一区二区精品在线观看| 亚洲另类色综合网站| 欧美成va人片在线观看| 波多野结衣亚洲| 日韩精品免费视频人成| 久久精品人人爽人人爽| 色综合天天综合网国产成人综合天| 欧美日韩免费观看一区二区三区| 亚洲精品日韩综合观看成人91| 欧美另类高清zo欧美| 国产福利电影一区二区三区| 《视频一区视频二区| 69精品人人人人| 国产+成+人+亚洲欧洲自线| 日韩成人av影视| 中文字幕日韩一区二区| 日韩一级精品视频在线观看| 乱一区二区av|