Показать сообщение отдельно
  #5  
Старый 15.12.2009, 09:39
Аватар для NIch
NIch NIch вне форума
Продвинутый
 
Регистрация: 02.06.2008
Адрес: Бендеры ПМР
Сообщения: 754
Репутация: 2446
По умолчанию

Твоя иконка это некоторый массив [0..31, 0..31]...
Код:
Form1.Image1.Canvas.Pixels[10,10]:=clRed
Рисует красную точку на Image по координатам 10, 10...
Т.е. ты можешь заполнить двумерный массив точками разных цветов...
Ты хочешь рисовать ее сам, на большой форме с сохранением ее в маленькой??? Небольшой код может будет посказкой...
Код:
procedure TForm1.MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: integer);
var
  X1, Y1: integer;
  a: TRect;
begin
//Вычисляем координаты начала квадрата на форме, т.е. точки на иконке
  X1 := X div 10 + 1;
  Y1 := Y div 10 + 1;
//Рисуем на Image
  Form1.Image1.Canvas.Pixels[X1,Y1]:=clRed;
//Вычисляем координаты квадрата  
  a.Left := (X1 - 1) * 10 + 1;
  a.Top := (Y1 - 1) * 10 + 1;
  a.Right := X1 * 10;
  a.Bottom := Y1 * 10;
//Рисуем квадрат на форме, на иконке это точка
  Canvas.Brush.Color := clRed;
  Canvas.Brush.Style := bsSolid;
  Canvas.FillRect(a);
end;
X и Y это в данном случае
Код:
Form1.Image1.Canvas.Pixels[X,Y]:=clRed
Нужно только поработать с цветами, т.е. не только красный...
Для того чтобы стереть точку, нарисуй другую там же, но белым цветом например...
__________________
В начале был Бит, потом Байт и только потом появилось Слово...
Ответить с цитированием