绘制直线
涉及函数(后续在函数板块补充):
SetPixel
MoveToEx
LineTo
GetCurrentPositionEx
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){ HDC hdc; PAINTSTRUCT ps; RECT rect; int i, j; POINT current_pos; TCHAR szBuffer[128]; switch (message) { case WM_PAINT: hdc = BeginPaint(hwnd, &ps); GetClientRect(hwnd, &rect); /* 第一种:靠循环在每个点位画点 for (i = rect.left; i < rect.r ...
实现滚动条
头文件:sysmets.h作用:存储打印信息
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165/*----------------------------------------------- SYSMETS.H -- System metrics display st ...
获取设备分辨率
分析:利用GetSystemMetrics函数获取设备尺寸:
GetSystemMetrics(SM_CXSCREEN)返回设备宽度(px)
GetSystemMetrics(SM_CYSCREEN);返回设备高度(px)
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778#include <windows.h>#include <strsafe.h>LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR CmdLine, int iCmdShow){ static TCHAR szAppName[] = TEXT(& ...
设置字母尺寸
分析:在WM_CREATE消息中获取字母宽度与高度修改后存入变量,在WM_PAINT消息中打印时直接在TextOut函数里面使用变量进行设置
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889#include <windows.h>#include <strsafe.h>LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR CmdLine, int iCmdShow){ static TCHAR szAppName[] = TEXT("MyWindows"); ...
实时获取鼠标位置
分析:窗口框架直接搬过来,修改回调函数WndProc,利用WM_MOUSEMOVE消息中的lParam参数获取实时鼠标位置并输出在左上角
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980#include <windows.h>#include <strsafe.h>LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR CmdLine, int iCmdShow){ static TCHAR szAppName[] = TEXT("MyWindows"); // 注意使用TEXT包裹语句 HWND ...