Форум: "KOL";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
ВнизKOLmdvXLGrid Найти похожие ветки
← →
Max727 (2007-09-03 16:03) [0]вопрос простой
хочу удалить выделенную строку, но не выходитprocedure TfmMain.xl1KeyDown(Sender: PControl; var Key: Integer;
Shift: Cardinal);
var itmp:integer;
begin
if Key = 46 then
begin
itmp:=xl1.Selected.Top;
xl1.DeleteRow(itmp);
end;
end;
что неправильно?
← →
mdw © (2007-09-03 16:30) [1]Специально проверил, просто код скопировал. Работает. Проверьте чему равно xl1.Selected.Top? Может быть -1, например, если выделять строки за заголовок.
Читаем описание:
property Selected - выделенный прямоугольник (не цветом, а рамкой);
Возможно стоит использовать
property SelectedRows[Index: Integer] - список выделенных строк;
Или
property Position - позиция курсора (фокус);
← →
Max727 (2007-09-03 16:51) [2]Решение нашел:
procedure TfmMain.xl1FocusChange(Sender: PControl; ACol, ARow: Integer);
begin
xl1.SetSelectedAll(False);
xl1.SelectedRows[xl1.Position.Y] := True;
xl1.CurIndex:=xl1.Position.Y;
end;
...
procedure TfmMain.xl1KeyDown(Sender: PControl; var Key: Integer;
Shift: Cardinal);
var itmp:integer;
begin
if Key = 46 then
begin
itmp:=xl1.CurIndex;
xl1.DeleteRow(itmp);
end;
end;
так - работает
извините за беспокойство
mdv спасибо, что указал направление
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c