Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.12.2010, 19:01   #1
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Сообщений: 246
По умолчанию StringGrid проверка данных

Посоветуйте как сравнить из каждой строчки колонки с данными.
Затем если данные правельные то скопирывать данные из 1 и 2 колонки.
-=Virus=- вне форума Ответить с цитированием
Старый 30.12.2010, 19:38   #2
asmodey1
Подтвердите свой е-майл
 
Регистрация: 19.12.2010
Сообщений: 808
По умолчанию

У StringGrid есть свойство Cells[Col, Row]...
asmodey1 вне форума Ответить с цитированием
Старый 30.12.2010, 19:57   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Рискну предположить что банальное
Код:
with StringGrid do
 if Cols[1].Text=Cols[2].Text then Они содержат одинаковый набор
Не проверял но попробовать мона.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 31.12.2010, 15:53   #4
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Сообщений: 246
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Рискну предположить что банальное
Код:
with StringGrid do
 if Cols[1].Text=Cols[2].Text then Они содержат одинаковый набор
Не проверял но попробовать мона.
А если весь список проверять?
Допустим я проверю так одну строчку,а нужно весь проверить.
-=Virus=- вне форума Ответить с цитированием
Старый 31.12.2010, 16:12   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Допустим я проверю так одну строчку
Пардонте, колонку??? Или строки проверять нужно?
Впрочем в цикле
Код:
for i:=0 to ColCount-1 do
  if Cols[i]...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 31.12.2010, 16:51   #6
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Сообщений: 246
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Пардонте, колонку??? Или строки проверять нужно?
Впрочем в цикле
Код:
for i:=0 to ColCount-1 do
  if Cols[i]...
В каждой строчке 1 колонку
-=Virus=- вне форума Ответить с цитированием
Старый 31.12.2010, 16:58   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
В каждой строчке 1 колонку
А я что тебе показал?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 31.12.2010, 21:37   #8
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Сообщений: 246
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
А я что тебе показал?
Спасибо сейчас попробую. С Новым Годом вас.
-=Virus=- вне форума Ответить с цитированием
Старый 02.01.2011, 00:13   #9
-=Virus=-
Форумчанин
 
Аватар для -=Virus=-
 
Регистрация: 03.07.2009
Сообщений: 246
По умолчанию

Хм. Что - то у меня не то получилась:
Код:
var
w,i:integer;
y,e:string;
begin
   for i:=0 to StringGrid1.ColCount -1 do
   if StringGrid1.Cols[i].text = Edit1.text then
    begin
      y:=TimeToStr(SysUtils.Time); 
      e:=DateToStr(SysUtils.Date); 

      inc(w);

      stringgrid2.RowCount:=stringgrid2.RowCount+1;

      StringGrid2.cells[0,w]:='['+e+']'+y; 
      StringGrid2.cells[1,w]:=edit1.text; 
      StringGrid2.cells[3,w]:=StringGrid1.Cols[i].text; 
    end;
Что не так подскажите.
-=Virus=- вне форума Ответить с цитированием
Старый 02.01.2011, 15:24   #10
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Если что-то не получается, то надо обязательно говорить как это "не получается" выглядит.

Локальную переменную w надо инициализировать начальным значением. Т.к. при входе в процедуру значение этой переменной может быть каким угодно, но не тем, которое хочется. Это актуально и потому, что используется процедура Inc(w).

Cols[i].Text содержит текст всех ячеек колонки, разделенных символами "перевода каретки". При сравнении со строкой из Edit1.Text шансов на корректное сравнение, практически, нет. Для этого желательно применять свойство Cells StringGrid. Т.е. сравнивать с Edit1.Text строки, которые находятся в ячейках. Разумеется, в цикле.
Прик вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
StringGrid проверка на наличие в ячейке символа SPD Общие вопросы Delphi 0 20.09.2010 11:27
проверка базы данных на корректность веденных данных samouelson БД в Delphi 1 20.12.2009 17:23
проверка данных 2 nervnuu Помощь студентам 0 07.12.2009 21:51
Проверка данных mehanek Microsoft Office Excel 3 17.04.2009 20:25