zoukankan      html  css  js  c++  java
  • 还是CRect 应注意的问题

    CRect类与Windows RECT结构相似,并且还包括操作CRect对象和Windows
    RECT结构的成员函数。
    在传递LPRECT,LPCRECT或RECT结构作为参数的任何地方,都可以传递
    CRect对象来代替。
    个CRect包含月于定义矩形的左上角和右下角点的成员变量。
    当指定一个CRect时,必须谨慎地构造它,以使它符合规范一也就是说,使
    其左坐标值小于右坐标值,使顶坐标值小于底坐标值。例如,左上角为(la,
    10),右下角为(20, 20)就定义了一个符合规范的矩形,但是左上角为(20,
    20)而右下角为(1D, 10)的值就定义了一个不符合规范的矩形。如果矩形是
    不符合规范的,则CRect的许多成员函数都会符合不正确的结果。(参见
    CRect::NormalizeRect可以得到这些函数的列表。)在你调用一个要求符合规范
    的矩形的函数之前,你可以通过调用NormalizeRect函数来使不符合规范的矩
    形成为符合规范的矩形。
    当用成员函数CDC::DPtoLP和CDC::LPtoDP来处理CRect时要小心。如果显
    示环境的映射模式Y-tent是负的,就像在MM LOENGLISH中一样,则
    CDC::DPtoLP将转换CRect,以使它的顶部坐标大于底部坐标。然后像Height
    和Size这样的函数将返回负值作为转换后的矩形的高度,则此矩形将是不符合
    规范的。
    当使用重载的CRect操作符时,第一个操作数必须是一个CRect;第二个操作
    数可以是一个RECT结构或一个CRect对象。
    参考资料:MSDN
  • 相关阅读:
    java
    EL表达式详解
    SVN的安装与配置
    javascript高级程序设计学习笔记
    java基础知识
    javascript高级程序设计学习笔记Chapter 5: Reference Types
    javascript模态,非模态窗体
    javascript执行顺序
    javascript的执行顺序2
    自动补全+汉字拼音双查(1)数据库
  • 原文地址:https://www.cnblogs.com/buffer/p/1256300.html
Copyright © 2011-2022 走看看