|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Удаление и очистка выделенного массива StringGrid
Привет!
Есть задумка: левой кнопкой мыши выделяется произвольный массив в StringGride, правой запускается popupmenu в которой есть пункты: "удалить", "очистить". Соответственно этот массив либо удаляется, либо очищается. Подскажите пожалуйста: 1. В каком событии прописывать код 2. Полезные статьи и ссылки по данной теме Пытаюсь сделать через OnClick соответствующих кнопок и goRangeSelect Заранее благодарен |
#2
|
||||
|
||||
Попробуй так:
Код:
function IsCellSelected(StringGrid: TStringGrid; X, Y: Longint): Boolean; begin Result := False; try if (X >= StringGrid.Selection.Left) and (X <= StringGrid.Selection.Right) and (Y >= StringGrid.Selection.Top) and (Y <= StringGrid.Selection.Bottom) then Result := True; except end; end; procedure TForm2.Button1Click(Sender: TObject); var I, J : Integer; begin // заливаем for I := 0 to SG.ColCount - 1 do for J := 0 to SG.RowCount - 1 do SG.Cells[I, J] := Format('X=%d, Y=%d', [I, J]); end; procedure TForm2.Button2Click(Sender: TObject); var I, J : Integer; begin // чистим for I := 0 to SG.ColCount - 1 do for J := 0 to SG.RowCount - 1 do if IsCellSelected(SG, I, J) then SG.Cells[I, J] := '' end; Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. Последний раз редактировалось angvelem, 28.07.2011 в 23:34. |
#3
|
|||
|
|||
Спасибо angvelem! Хорошая функция, попробовал, все работает К этой функции мы еще чего-нибудь прикрутим
|