《Windows程序设计》之数字时钟

感觉这个时钟除了一些数学的知识外,还是映射坐标问题,到现在我也没有弄明白是怎么回事,贴点代码


void SetIsotropic(HDC hdc,int cxClient,int cyClient)
{
	//设置映射模式为MM_ISOROPIC
	SetMapMode(hdc,MM_ISOTROPIC);
	//设置Windows窗口大小1000*1000,窗口是看不到的,窗口的数据是用来显示到视图的
	SetWindowExtEx(hdc,1000,1000,NULL);
	//下面两句还是不理解,得不到好的解释,下面-cyClient改为cyClient后,时钟会上下反转
	SetViewportExtEx(hdc,cxClient/2,-cyClient/2,NULL);
	//下面设置圆心的显示地方
	SetViewportOrgEx(hdc,cxClient/2,cyClient/2,NULL);
}

SetViewportExtEx(hdc,cxClient/2,-cyClient/2,NULL);
这个地方为什么要做成负的cyClient?跟画图有关?那为什么不正着玩圆呢?郁闷中。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值