Форум: "Основная";
Текущий архив: 2002.08.15;
Скачать: [xml.tar.bz2];
ВнизКак узнать номер последней записи в StringGrid’е? Найти похожие ветки
← →
Pichkarus (2002-08-01 02:09) [0]Очень нужно! Помогите пожалуйста!
← →
Aleks1 (2002-08-01 02:55) [1]А RowCount-1 не подойдет?
← →
Григорий Ситнин (2002-08-01 09:06) [2]LastRow := pred(TStringList.Count);
← →
Pichkarus (2002-08-01 12:56) [3]
> Григорий Ситнин © (01.08.02 09:06)
Нет, мне надо не StringList, а StringGrid!
Пробовал подставить – ничего не вышло…
> Aleks1 (01.08.02 02:55)
А что значит?
Вообще количество строк в StringGrid’е может быть сколько угодно, а заполненных, даже хотя бы одним символом – не все, причем заполнены они могут быть не по порядку, а скажем через одну, так вот мне надо узнать номер самой самой последней заполненной строки!
В этом та вся и сложность, прошу помочь!
Заранее благодарен!
← →
Anatoly Podgoretsky (2002-08-01 12:59) [4]Никакой сложности, цикл от конца в начала начала и проверка всех ячеек на заполненность
← →
Skier (2002-08-01 13:07) [5]>Pichkarus
Примерно так :
procedure TForm1.Button1Click(Sender: TObject);
function GetLastRow(const AStringGrid : TStringGrid) : Integer;
var
ii, jj : Integer;
begin
Result := -1;
if AStringGrid = nil then Exit;
for ii := AStringGrid.RowCount - 1 downto 0 do begin
for jj := 0 to AStringGrid.ColCount - 1 do begin
if AStringGrid.Cells[jj, ii] <> EmptyStr then begin
Result := ii;
Exit;
end; //if
end; //for jj
end; //for ii
end; //GetLastRow
begin
WriteLn(GetLastRow(StringGrid1));
end;
← →
Pichkarus (2002-08-01 13:08) [6]Ну пытался вчера – не получилось :(
← →
Pichkarus (2002-08-01 13:11) [7]
> Skier © (01.08.02 13:07)
Щас попробую!
← →
MBo (2002-08-01 13:11) [8]упрощение
for ii := AStringGrid.RowCount - 1 downto 0 do
if Length(AStringGrid.Rows[ii].Commatext)>0 then begin
Result:=ii;
Break;
end;
← →
Skier (2002-08-01 13:13) [9]>MBo
Хитро !
А это быстрее будет работать ?
← →
Anatoly Podgoretsky (2002-08-01 13:13) [10]Где это видно как ты пытался, тебе уже и код привели, практически рабочий, я бы обернул обращение к ячейке в функцию TRIM, что бы отсеть строки из одник пробелов и отношение изменил с <> на =
← →
Anatoly Podgoretsky (2002-08-01 13:15) [11]Ой отношение менять не надо, с ним все в порядке, жара
Skier © (01.08.02 13:13)
Какая разница, если сетка несколько тысяц строк, то уже не важно.
← →
MBo (2002-08-01 13:16) [12]>Skier
быстрее - вряд ли
← →
Pichkarus (2002-08-01 13:17) [13]Всем Большое Спасибо!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.08.15;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c