Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Поиск и сортировка в TreeView


Автор: Evgun 6.1.2013, 18:12
Суть такова: Есть ТрииВью, в нём 3 родительских узла. Их нужно отсортировать и сделать по ним поиск. 
я не очень разбираюсь в С++, так что, если можно, попонятнее))

 Код:

Код

typedef struct
        {
           AnsiString Model;
        } CAR;
     CAR car[5];

        AnsiString buf;


        void __fastcall TForm1::SearchClick(TObject *Sender)
        {
        for (int a=0; a<5; a++)
        {
         car[a].Model=TreeView1->Items->Item[a];  //запись в массив
        }  
                          
   //сортировка прямым выбором
  for (int a=0; a<5; a++)
  {  CAR tmp = car[a];
     int k = a;

     for (int j=a+1; j<5; j++)
       if(car[j].Model<tmp.Model)
       {
         tmp=car[j];
         k=j;
       }
     car[k]=car[a];
     car[a]=tmp;
  }

    int a;
   for(int i=0; i<5; i++)
     TreeView1->Items->Item[a]=car[i].Model;  //запись обратно в TreeView


     //поиск
      int u;
      buf=Edit3->Text;
      int LinearSearch(car* u);

           for(int a=0; a<5; a++);
            if(u[a].car==Text)
            {
            TreeView1->Items->Item[a]->Selected->true;
            }

}
//---------------------------------------------------------------------------



ошибки:


http://www.radikal.ru

Автор: FTTA 10.1.2013, 00:50
Ты сохраняешь в ячейку массива не текст, а сразу целый нод

Попробуй так
Код

car[a].Model=TreeView1->Items->Item[a]->Text;


Дожно работать

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)