Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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
1-48072
Man-In-Red
2002-08-01 00:25
2002.08.15
???


3-47984
Roma111
2002-07-26 15:56
2002.08.15
XP в IB6


1-48056
pentium
2002-08-03 09:46
2002.08.15
Мочилка троянцев, вирусов, и.т.п


3-47963
Ag2002
2002-07-22 17:37
2002.08.15
отчёт


4-48352
hooky-mars
2002-05-29 18:34
2002.08.15
Компоненты чужого окна





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский