⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 customdrawtableviewdemotypes.cpp

📁 DevExpress ExpressQuantumGrid Suite v5.9 Full Source
💻 CPP
字号:
#include "CustomDrawTableViewDemoTypes.h"

const SchemeArr ColorScheme = {{clSilver, clWhite, clGray},
                                    {clGold, clGreyLight, clGoldDark},
                                    {clBlueDark, clBlueLight, clBlueDark},
                                    {clGreenDark, clGreenLight, clGreen}};

void DrawGradient(TCanvas* ACanvas, TRect ARect, TColor FromColor, TColor ToColor,
  int AStepCount, bool IsVertical)
{
  Byte R, G, B;
  Byte FromR = GetRValue(FromColor);
  Byte FromG = GetGValue(FromColor);
  Byte FromB = GetBValue(FromColor);
  Byte ToR = GetRValue(ToColor);
  Byte ToG = GetGValue(ToColor);
  Byte ToB = GetBValue(ToColor);
  TRect SR = ARect;

  int H;

  if (IsVertical)
    H = ARect.Bottom - ARect.Top;
  else
    H = ARect.Right - ARect.Left;

  for(int i = 0; i < AStepCount; i++) {
    if (IsVertical)
      SR.Bottom = ARect.Top + MulDiv(i + 1, H, AStepCount);
    else
      SR.Right = ARect.Left + MulDiv(i + 1, H, AStepCount);

    R = (byte)(FromR + MulDiv(i, ToR - FromR, AStepCount - 1));
    G = (byte)(FromG + MulDiv(i, ToG - FromG, AStepCount - 1));
    B = (byte)(FromB + MulDiv(i, ToB - FromB, AStepCount - 1));
    ACanvas->Brush->Color = (TColor)RGB(R, G, B);
    ACanvas->FillRect(SR);

    if (IsVertical)
      SR.Top = SR.Bottom;
    else
      SR.Left = SR.Right;
  }

}

void LoadImageFromRes(Graphics::TBitmap* ABitmap, String AResName)
{
  Graphics::TBitmap* Bitmap = new Graphics::TBitmap();
  TResourceStream* Rs = new TResourceStream((int)HInstance, AResName, RT_RCDATA);
  try {
    Bitmap->LoadFromStream(Rs);
    ABitmap->Assign(Bitmap);
  }
  __finally {
    delete Bitmap;
    delete Rs;
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -