unit1.cpp
来自「本书《C++Builder与WindowsAPI经典范例》附含配套光盘包括132」· C++ 代码 · 共 36 行
CPP
36 行
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
for (int y=0;y<Image1->Height;y++)
for (int x=(y % 2 ? 0 : 1);x<Image1->Width;x+=2)
{
//取得指定位置的位图色彩
COLORREF pcolor = ::GetPixel( Image1->Canvas->Handle, x, y );
//逐一用宏取出RGB色彩值,并调高彩值
unsigned int r = ((int)GetRValue(pcolor) + 40);
unsigned int g = ((int)GetGValue(pcolor) + 40);
unsigned int b = ((int)GetBValue(pcolor) + 40);
//限制彩值范围
if(r>255) r = 255; if(g>255) g = 255; if(b>255) b = 255;
///重设位图色彩
::SetPixel(Image1->Canvas->Handle, x, y, RGB(r, g, b));
}
//更新Image1显示
Image1->Refresh();
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?