当前位置: 首页>>代码示例>>C++>>正文


C++ Painter::InvertRect方法代码示例

本文整理汇总了C++中Painter::InvertRect方法的典型用法代码示例。如果您正苦于以下问题:C++ Painter::InvertRect方法的具体用法?C++ Painter::InvertRect怎么用?C++ Painter::InvertRect使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Painter的用法示例。


在下文中一共展示了Painter::InvertRect方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: Draw

bool PZoomInteraction::Draw (Painter &inPainter) {
  if (mDragging) {
    inPainter.SetLineColor (255, 0, 0);

    float theX1 = mX1;
    float theX2 = mX2;
    float theY1 = mY1;
    float theY2 = mY2;

    bool theDrawInverse = true;

    switch (mZoomMode) {
    case kZoom_Region:
      //      theDrawInverse = false;
      break;
    case kZoom_X:
      theY1 = mPPlot.mMargins.mTop;
      theY2 = inPainter.GetHeight ()-mPPlot.mMargins.mBottom;
      break;
    case kZoom_Y:
      theX1 = mPPlot.mMargins.mLeft;
      theX2 = inPainter.GetWidth ()-mPPlot.mMargins.mRight;
      break;
    }

    // draw rectangle
    inPainter.DrawLine (theX1, theY1, theX2, theY1);
    inPainter.DrawLine (theX2, theY1, theX2, theY2);
    inPainter.DrawLine (theX2, theY2, theX1, theY2);
    inPainter.DrawLine (theX1, theY2, theX1, theY1);

    if (theDrawInverse) {
      float theX = pmin (theX1, theX2); 
      float theY = pmin (theY1, theY2); 
      float theW = fabs (theX1-theX2);
      float theH = fabs (theY1-theY2);
      inPainter.InvertRect (theX, theY, theW, theH);
    }
  }
  return true;
  
}
开发者ID:Boerlam001,项目名称:proton_sdk_source,代码行数:42,代码来源:PPlotInteraction.cpp


注:本文中的Painter::InvertRect方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。