Графика и мультимедиа_________________________________343

Этот оператор восстанавливает на холсте изображение, сохраненное в BitMap.

14. В обработчик события OnClick кнопок SBBrush и SBColor запишите оператор

if (((TSpeedButton *)Sender)->Down)
BitMap->Assign(Image3->Picture);

Этот оператор запоминает в BitMap текущий вид изображения перед началом
работы с очередным инструментом.

15. В обработчик события OnMouseDown компонентов ImageS и Image4 вставьте
код:

if((Sender == Image4) || SBColor->Down)
// режим установки основного и вспомогательного цветов
(

if(Button == mbLeft)
{
// установка основного цвета

Imagel->Canvas->Brush->Color = ((TImage *)Sender)->Canvas->
Pixels[X][Y] ;

Imagel->Canvas->FillRect(Rect(0,0,Imagel->Width,Imagel->Height)) ;

}

else
(
// установка вспомогательного цвета

Image2->Canvas->Brush->Color = ((TImage *)Sender)->Canvas->
Pixels[X][Y] ;

Image2->Canvas->FillRect(Rect(0,0,Image2->Width,Image2->Height)) ;

t
)

else if (SBBrush->Down)

// режим закраски указанной области холста
(

if (Button==mbLeft)
Image3->Canvas->Brush->Color = Imagel->Canvas->Brush->Color;

else Image3->Canvas->Brush->Color = Image2->Canvas->Brush->Color;

Image3->Canvas->FloodFill(X,Y,Image3->Canvas->Pixels[X][Y],
fsSurface) ;

}

Это основной код, осуществляющий как установку основного и вспомогатель-
ного цветов, так и функцию инструмента графического редактора — кисти. Если
кнопка мыши нажата на палитре цветов Image4 или если кнопка SBColor — кноп-
ка указателя цвета утоплена, то приложение находится в режиме установки цве-
тов. При нажатой левой кнопке мыши цвет пикселя под курсором мыши передает-
ся в окно основного цвета, а при нажатии правой кнопки — в окно вспомогатель-
ного цвета.

Если кнопка мыши нажата на холсте Image3 и при этом кнопка SBBrush
утоплена, то приложение находится в режиме закраски указанной области рисун-
ка. В этом случае в зависимости от нажатой кнопки мыши выбирается основной
или вспомогательный цвет и функцией FloodFill производится закраска области,
координаты внутренней точки которой указаны курсором мыши, а цвет — цветом
пикселя, на который указывает мышь.

Ваше приложение готово. В дальнейшем, после получения некоторых допол-
нительных сведений о графике, вы, если захотите, сможете вернуться к нему и по-
полнить новыми инструментами.

Откомпилируйте приложение, сохраните его и выполните. Проверьте установ-
ку цветов. При щелчке левой или правой кнопкой мыши на палитре цветов у вас
будет меняться соответственно основной или вспомогательный цвет. Если вы на-
жмете кнопку кисти в окне приложения, то при щелчке на холсте у вас должна за-