![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Добрый день! Я новичок в Delphi. Прошу совета.
Задача: вывести на Форму-->TImage двухмерный массив 00100 01100 11111 01100 00100 в виде таблицы (там где 0-серый, 1-красный). Это я сделал. Код:
procedure TMainForm.PaintPole; var Canvas: TCanvas; i,j,k: Integer; Rows: Integer; Cols: Integer; CellString: String; CellValue: Integer; DigitRowsTable: Array of Array of Integer; m, n, ShapeLeft, ShapeTop: Integer; begin ShapeLeft := 0; ShapeTop := 0; for m:=1 to Cols do begin ShapeTop := ShapeTop+50; for n:=1 to Rows do begin Canvas.Pen.Width := 4; Canvas.Pen.Color := clBtnText; if DigitRowsTable[m-1,n-1]=0 then Canvas.Brush.Color := clBtnFace else Canvas.Brush.Color := clRed; ShapeLeft := ShapeLeft+50; Canvas.Rectangle(ShapeLeft, ShapeTop, ShapeLeft+50, ShapeTop+50); Canvas.Font.Size := 7; Canvas.TextOut ( ShapeLeft+17, ShapeTop+20, IntToStr(m)+' '+IntToStr(n)); end; ShapeLeft := 0; end; end; Далее мне нужно наведя курсор мыши на ячейку, по правой кнопке иметь возможность изменить цвет (с серого на красный и наоборот), записать новое значение (0 или 1 в массив). Пока не получается получить даже координаты курсора. Последний раз редактировалось Admin, 15.09.2010 в 16:45. |