• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о проекте, чтобы узнать больше. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Запись в stringgrid

  • Автор темы Автор темы mish_k98
  • Дата начала Дата начала

mish_k98

Ученик
Почётный участник
Регистрация
28 Ноя 2010
Сообщения
728
Реакции
1
Баллы
0
Запись в stringgrid

здравствуйте.помогите составить код.есть база даных.требуется найти определённые строки по ключевому слову и всю строку добавить в stringgrid.но дело в том что колличество и расположение строк определяестя поиском.вот часть кода
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString al=LabeledEdit1->Text;
AnsiString bl;
AnsiString ap=LabeledEdit2->Text;
AnsiString bp;
ADOTable1->First();
bool legal=false;
ADOTable1->First();
for (int i=0;i<ADOTable1->RecordCount;i++)
{
bl=ADOTable1->FieldByName("Товар")->AsString;
bp=ADOTable1->FieldByName("Поставщик")->AsString;
if ((al==bl) || (ap==bp)){ legal = true;
Ini->WriteString("Поиск","Код",ADOTable1->FieldByName("Код")->AsString);
Ini->WriteString("Поиск","Товар",ADOTable1->FieldByName("Товар")->AsString);
Ini->WriteString("Поиск","Дата",ADOTable1->FieldByName("Дата")->AsString);
Ini->WriteString("Поиск","Цена",ADOTable1->FieldByName("Цена")->AsString);
Ini->WriteString("Поиск","Поставщик",ADOTable1->FieldByName("Поставщик")->AsString);
Ini->WriteString("Поиск","Количество",ADOTable1->FieldByName("Количество")->AsString);
Ini->WriteString("Поиск","Сумма",ADOTable1->FieldByName("Сумма")->AsString);



}
ADOTable1->Next();
}
if (!legal)// ShowMessage("Нету!");
MessageDlg("Нету!", mtInformation, TMsgDlgButtons()<<mbOK,0);
else {

ShowMessage("есть!");
ShellExecute(0, "open", "search_p.ini", 0, "HTML", SW_SHOWNORMAL);


}
}
на даном этапе я просто записываю последнюю найденую строку в файл.а их может быть несколько.помогите разобраться
 
Я с ADO совсем не работал, но там же, вроде можно выполнить свой sql? Выбрать все нужные данные и записать куда нужно...
 
я с sql пока не умею работать.помогите,знающие люди
 
вот мой вариант, но так не работает
Form11->StringGrid1->Rows->Values=ADOTable1->Fields->Fields->Value;
 
где ошибка????
 
помогите, люди добрые
 
прошу помощи
 
остался один экзамен, в пятницу. смогу помочь только после него...
 
ок.буду ждать
 
вот мой вариант, но так не работает
Form11->StringGrid1->Rows->Values=ADOTable1->Fields->Fields->Value;

дык ты указателю на массив значений пытаешься значение присвоить) индекс значения в стринггриде укажи
 
не очень понял.не могли бы вы написать полностью как должно быть.с стринггридом не очень знаком.это моя первая программа с ним
 
StringGrid1->Rows[0]->Values[0] = ADOTable1->Fields->Fields[0]->Value;
вместо 0 свои индексы пиши
 
попробую.отпишусь
 
Назад
Сверху