win32坐标系统的转换

本文探讨了在Windows窗口的MM_TEXT模式下,创建一个1200x800窗口时,尺寸单位的问题。介绍了SetViewportOrgEx和SetWindowOrgEx函数在坐标系统转换中的作用,以及SetMapMode如何影响坐标映射。通过SetWindowExtEx和SetViewportExtEx可以设置窗口逻辑单位到视口设备单位的映射,解释了MM_ISOTROPIC和MM_ANISOTROPIC模式的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • First,code…
//my_header.h
#ifndef __MY_HEADER_ 
#define __MY_HEADER_

#include<windows.h>
#include<strsafe.h>
#include<tchar.h>




#define WIDTH 800
#define HEIGHT 600



#endif
//main.cpp


#include"my_header.h"

HWND hwnd = NULL;
TCHAR szClassName[32] = TEXT("my_class");



LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam);
bool RegisterMyClass(HWND hwnd, HINSTANCE hInstance, int nShow);



int WINAPI wWinMain(HINSTANCE hinstance, HINSTANCE prehInstance, LPTSTR cmdLine, int nShow)
{
	MSG msg;

	if (!RegisterMyClass(hwnd, hinstance, nShow))
		return 0;

	while (GetMessage(&msg, NULL, 0, 0))
	{
		TranslateMessage(&msg);
		DispatchMessage(&msg);
	}
	return msg.wParam;
}


bool RegisterMyClass(HWND hwnd, HINSTANCE hInstance, int nShow)
{
	WNDCLASS wndclass = { sizeof(wndclass) };
	wndclass.hbrBackground = (HBRUSH)GetStockObject(BLACK_
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值