Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.12.21;
Скачать: CL | DM;

Вниз

Непонятки с TStringGrid   Найти похожие ветки 

 
leonidus   (2008-11-12 10:59) [0]

В TStringGrid`е у меня один столбец, программа в соответствии с кол-вом данных необходимых для отображения создает нужное число строк и загружает в них данные. Пользователь может любую ячейку отредактировать перемещаясь между ячейками с помощью стрелок клавиатуры. Если указатель стоит на самом последней ячейке (самой нижней строчке) и юзер нажимает клавишу "вниз", то код      TStringGrid1.RowCount:=TStringGrid1.RowCount+1;
добавляет новую ячейку для новых данных. Теперь мне нужно слетать так, что если указатель находится на последней пустой ячейке и юзер нажал клавишу "вверх", пустая ячейка исчезала, т.е.:
TStringGrid1.RowCount:=TStringGrid1.RowCount-1;
логично предположить что при этом указатель должен автоматически переместиться на новую последнюю ячейку (до нажатия клавиши она была предпоследняя), однако указатель упорно становится не на последнюю, а именно на предпоследнюю ячейку, перескакивая последнюю. В чем может быть дело?


 
Leonid Troyanovsky ©   (2008-11-12 13:01) [1]


> leonidus   (12.11.08 10:59)  

> слетать так, что если указатель находится на последней пустой
> ячейке и юзер нажал клавишу "вверх", пустая ячейка исчезала,
>  т.е.:
> TStringGrid1.RowCount:=TStringGrid1.RowCount-1;

Вставь после этой строки Abort.

--
Regards, LVT.


 
leonidus   (2008-11-12 13:44) [2]

у TStringGrid нет метода Abort...


 
Amoeba ©   (2008-11-12 13:50) [3]


> leonidus   (12.11.08 13:44) [2]
>
> у TStringGrid нет метода Abort...

Это не метод, а обычная процедура. Потрудись заглянуть в справку.


 
leonidus   (2008-11-12 14:20) [4]

Кажется заработало спасибо, но я не понял почему же происходило перескакивание?


 
clickmaker ©   (2008-11-12 14:25) [5]

> но я не понял почему же происходило перескакивание

поройся в исходниках VCL


 
leonidus   (2008-11-12 14:33) [6]

я вроде простой вопрос задал, неужели так трудно подсказать в чем была проблема?


 
Поросенок Винни-Пух ©   (2008-11-12 15:02) [7]

Кажется заработало спасибо, но я не понял почему же происходило перескакивание?

Двойной удар. Сначала удалилась настоящая последняя, потом был обработан шаг вверх. Итого ты на бывшей пред-предпоследней строке.



Страницы: 1 вся ветка

Текущий архив: 2008.12.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.016 c
15-1224575628
Vlad Oshin
2008-10-21 11:53
2008.12.21
Ошибка загрузки dll. at $7C812A5B. Почему такое может быть?


2-1226321890
MegaVolt_old
2008-11-10 15:58
2008.12.21
Подскажите про работу с PWideChar.


15-1224237256
balepa
2008-10-17 13:54
2008.12.21
BPascal


15-1224826433
БарЛог
2008-10-24 09:33
2008.12.21
А кто-нибудь помнит сайт, который показывает


2-1226305803
timekiller
2008-11-10 11:30
2008.12.21
XML с дочерьми ..