📄 zz.cpp
字号:
#include <windows.h>
#include <math.h>
#include <string.h>
#include <stdlib.h>
#include<stdio.h>
LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM);
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow)
{
HWND hwnd ;
MSG msg ;
WNDCLASS wndclass ;
wndclass.style = CS_HREDRAW | CS_VREDRAW ;
wndclass.lpfnWndProc = WndProc ;
wndclass.cbClsExtra = 0 ;
wndclass.cbWndExtra = 0 ;
wndclass.hInstance = hInstance ;
wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION) ;
wndclass.hCursor = LoadCursor (NULL, IDC_ARROW) ;
wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ;
wndclass.lpszMenuName = NULL ;
wndclass.lpszClassName = "鼠标程序";
if (!RegisterClass (&wndclass))
{
MessageBox (NULL, "failure!", "Good", 0) ;
return 0 ;
}
hwnd = CreateWindow ("鼠标程序",
"鼠标 ",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
0,
CW_USEDEFAULT,
0,
NULL,
NULL,
hInstance,
NULL) ;
ShowWindow (hwnd, nCmdShow) ;
UpdateWindow (hwnd) ;
while (GetMessage (&msg, NULL, 0, 0)) {
TranslateMessage (&msg) ;
DispatchMessage (&msg) ;
}
return msg.wParam ;
}
LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
HDC hdc;
PAINTSTRUCT ps;
HPEN hp;
HBRUSH hb;
WORD x,y;
HCURSOR hc;
static char str1[]={"LEFT BUTTON!"};
static char str2[]={"RIGHT BUTTON!"};
static left=0,right=0;
switch (message) { case WM_LBUTTONDOWN:
left=1;break;
case WM_LBUTTONUP:
InvalidateRect(hwnd,NULL,0);break;
case WM_RBUTTONDOWN:
right=1;break;
case WM_RBUTTONUP:
InvalidateRect(hwnd,NULL,0);break;
case WM_MOUSEMOVE:
x=LOWORD(lParam);y=HIWORD(lParam);
InvalidateRect(hwnd,NULL,0);break;
case WM_PAINT: hdc = BeginPaint(hwnd, &ps);
SetWindowExtEx(hdc,420,420,NULL);
SetViewportExtEx(hdc,400,400,NULL);
if(x>=0&&x<=400&&y>=0&&y<=100)
{hp=CreatePen(PS_SOLID,2,RGB(255,0,0));
hb=CreateSolidBrush(RGB(255,255,255));
SelectObject(hdc,hb);SelectObject(hdc,hp);
Rectangle(hdc,0,0,400,100);
hc=LoadCursor(NULL,IDC_CROSS);
SetCursor(hc);}
if(x>=0&&x<=200&&y>=100&&y<=250)
{hp=CreatePen(PS_SOLID,2,RGB(255,0,0));
hb=CreateSolidBrush(RGB(255,255,255));
SelectObject(hdc,hb);SelectObject(hdc,hp);
Rectangle(hdc,0,100,200,250);
hc=LoadCursor(NULL,IDC_SIZEALL);
SetCursor(hc);}
if(x>=0&&x<=200&&y>=250&&y<=400)
{hp=CreatePen(PS_SOLID,2,RGB(255,0,0));
hb=CreateSolidBrush(RGB(255,255,255));
SelectObject(hdc,hb);SelectObject(hdc,hp);
Rectangle(hdc,0,250,200,250);
hc=LoadCursor(NULL,IDC_UPARROW);
SetCursor(hc);}
if(x>=2000&&x<=400&&y>=100&&y<=250)
{hp=CreatePen(PS_SOLID,2,RGB(255,0,0));
hb=CreateSolidBrush(RGB(255,255,255));
SelectObject(hdc,hb);SelectObject(hdc,hp);
Rectangle(hdc,200,100,400,250);
hc=LoadCursor(NULL,IDC_WAIT);
SetCursor(hc);}
if(x>=200&&x<=400&&y>=250&&y<=400)
{hp=CreatePen(PS_SOLID,2,RGB(255,0,0));
hb=CreateSolidBrush(RGB(255,255,255));
SelectObject(hdc,hb);SelectObject(hdc,hp);
Rectangle(hdc,200,250,400,450);
hc=LoadCursor(NULL,IDC_SIZEWE);
SetCursor(hc);}
if(left==1)
{InvalidateRect(hwnd,NULL,0);
SetTextColor(hdc,RGB(255,0,0));
hp=CreatePen(PS_SOLID,2,RGB(255,0,0));
hb=CreateSolidBrush(RGB(255,255,255));
SelectObject(hdc,hb);SelectObject(hdc,hp);
Ellipse(hdc,100,100,300,300)
TextOut(hdc,0,0,str1,strlen(str1));left=0}
if(right==1)
{InvalidateRect(hwnd,NULL,0);
SetTextColor(hdc,RGB(255,0,0));
hp=CreatePen(PS_SOLID,2,RGB(255,0,0));
hb=CreateSolidBrush(RGB(255,255,255));
SelectObject(hdc,hb);SelectObject(hdc,hp);
Ellipse(hdc,100,100,300,300)
TextOut(hdc,0,0,str2,strlen(str2));right=0}
DeleteObject(hb);
DeleteObject(hp);
EndPaint(hwnd,&ps);
break;
case WM_DESTROY:
{ PostQuitMessage (0) ;
return 0 ;}
default:
{return DefWindowProc (hwnd, message, wParam, lParam) ; }
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -