Главная страница
    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
3-47987
zzzzzzz
2002-07-26 16:19
2002.08.15
Переиндексация


1-48041
Are you want a tea?
2002-08-03 20:23
2002.08.15
TStrings и ему подобные


3-47941
goshavt
2002-07-25 15:27
2002.08.15
Есть ли компоненты для доступа к Oracle и MS SQL без BDE


14-48300
Lola
2002-07-17 15:44
2002.08.15
Лето... Жара... Все на пляж!!!


14-48292
Digitman
2002-07-18 08:15
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский