Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите со stringgrid'ом [D7, WinXP]


vnutr ©   (2011-01-07 20:12:00) 

_кол-1___|___кол-2___|
____1,1___|____2,1_____|
____1,2___|____2,2_____|
____1,3___|____2,3_____|

if (1,2>1,1)and(1,2<2,1) then showmessage('dfgdegf');
if (1,3>1,2)and(1,3<2,2) then showmessage('dfgdegf');

и т.д.

ПОМОГИТЕ ПОЖАЛУЙСТА!!! Как это осуществить?
Я пишу:
procedure TForm1.Button1Click(Sender: TObject);
var
BeginDate, EndDate: Tdatetime;
r: integer;

begin
for r:= 1 to StringGrid1.RowCount do
begin
if (stringgrid1.Cells[0, r]<>'')or(stringgrid1.Cells[1, r]<>'') then
begin
BeginDate:= StrToDate(Stringgrid1.Cells[0, r]);
EndDate:= StrToDate(Stringgrid1.Cells[1, r]);

if (StrToDate(StringGrid1.Cells[0,r+1])>BeginDate)and(StrToDate(StringGrid1.Cells[0,r+1])<EndDate) then
showmessage(StringGrid1.Cells[0,r+1] + ' входит в период ' + ' от '+ DateToStr(BeginDate) + ' по ' + DateToStr(EndDate));

end;
end;
end;
Всё вроде бы работает, но в конце концов выдаёт ошибку.
ПОМОГИТЕЕЕЕ


vnutr   (2011-01-07 21:16:00) [1]

Удалено модератором


12   (2011-01-07 21:14:00) [2]

Удалено модератором


Христосов И.Я.   (2011-01-07 21:11:00) [3]

Удалено модератором


Сергей М.   (2011-01-07 21:09:00) [4]

Удалено модератором


12   (2011-01-07 21:09:00) [5]

Удалено модератором


vnutr   (2011-01-07 21:07:00) [6]

Удалено модератором


12   (2011-01-07 21:07:00) [7]

Удалено модератором


vnutr   (2011-01-07 21:04:00) [8]

Удалено модератором


Сергей М.   (2011-01-07 21:02:00) [9]

Удалено модератором


Сергей М.   (2011-01-07 20:59:00) [10]

Удалено модератором


vnutr   (2011-01-07 20:59:00) [11]

Удалено модератором


Советую   (2011-01-07 20:54:00) [12]

Удалено модератором


vnutr   (2011-01-07 20:51:00) [13]

И как мне быть с моей проблемой? Что посоветуете?


Сергей М.   (2011-01-07 20:48:00) [14]


> разъ еснить


Ну а что тут не есно ?
При конвертации строкового представления числа с п/з в ссамо число с п/з используется именно тот символ-разделитель целой и дробной частей. который на момент конвертации фигурирует в глоб.переменной DecimalSeparator.


vnutr   (2011-01-07 20:44:00) [15]

???
А можете разъеснить


Сергей М.   (2011-01-07 20:42:00) [16]


> Это не помогает


Это другие грабли. Но не менее больно лупцующие по лбу не читающего справку.
А первые грабли - в  DecimalSeparator


vnutr   (2011-01-07 20:20:00) [17]

Это не помогает. Я уже пробовал(( Пробовал отлавливать конец списка:
if r < StringGrid1.RowCount- 1 then
begin
if  (StrToDate(StringGrid1.Cells[0,r+1])>BeginDate)and(StrToDate(StringGrid1.Cells[0,r+1])<EndDate) then
 showmessage(StringGrid1.Cells[0,r+1] + ' входит в период ' + ' от '+ DateToStr(BeginDate) + ' по ' + DateToStr(EndDate));
end
else
 ShowMessage('Конец списка');
Все равно безнадежно. Что я не так делаю? Помогите пожалуйста


vnutr   (2011-01-07 20:15:00) [18]

Вот ошибка - Project raised exeption class EConvertError with message '''' is not a valid date. Process stopped. Use Step or Run to continue


Сергей М.   (2011-01-07 20:15:00) [19]


> в конце концов выдаёт ошибку.


"конец концов" - это RowCount -1, а не RowCount


Наверх

Титульная страница Поиск, карта сайта Написать письмо