LEXAlForpostl
Мой дом здесь!
- Регистрация
- 21 Май 2008
- Сообщения
- 766
- Реакции
- 228
- Автор темы
- #1
Здравствуйте.
На форме есть таблица- Table1 с полем по которому делаем фильтрацию nazr (название района), компонент радио группа кнопок - RG1Click
Кнопка обновить - Button2 , кнопка выбрать -Button4, компонент (ListBox) выбора нескольких районов - LB1 и другие компоненты которые корректно работают
Надо сделать выбор по нескольким районам , указав их в компоненте LB1, это выполняется. но выбор идет только по тому району который был выделен последним в списке выбранных , и либо прописать выбор нескольких районов в методе Асcерt – фильтрации ( cм * ) или отдельно по нажатию кнопки Button4 ( см **)
Как быть?
Код:
void __fastcall TForm2::RG1Click(TObject *Sender)
{
if (RG1->ItemIndex==0)
Table1->Filtered=false;
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Button2Click(TObject *Sender)
{
Table1->Filtered = false;
Table1->Filtered = true;
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Table1FilterRecord(TDataSet *DataSet, bool &Accept)
{
Accept = ((RG1->ItemIndex == 1) && ( ((CS2->Value)==0 &&(
Table1nazr->Value==CB1->Text
)) ||
((CS2->Value)>0 && (CB1->Text=="" )&&
( (Table1cena->Value <= (CS2->Value)) && (Table1cena->Value >= (CS1->Value)) )
)
*||((CS2->Value)==0 && (Table1nazr->Value==CB1->Text)&&
(Table1nazr->Value==LB1->Items->Strings[LB1->ItemIndex]) )
|| ((CS2->Value)>0 &&(Table1nazr->Value==CB1->Text)&&
( (Table1cena->Value <= (CS2->Value)) && (Table1cena->Value >= (CS1->Value)) )
)
) );
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Button4Click(TObject *Sender)
{ //Table1->Filtered = false;
//if (RG1->ItemIndex==1)
** for(int i=0; i<LB1->Items->Count; i++)
{
if(LB1->Selected[i])
Table1->Filter="nazr=' " + LB1->Items->Strings[LB1->ItemIndex] + " ' ";
}
//Table1->Filtered = true;
}
//---------------------------------------------------------------------------
На форме есть таблица- Table1 с полем по которому делаем фильтрацию nazr (название района), компонент радио группа кнопок - RG1Click
Кнопка обновить - Button2 , кнопка выбрать -Button4, компонент (ListBox) выбора нескольких районов - LB1 и другие компоненты которые корректно работают
Надо сделать выбор по нескольким районам , указав их в компоненте LB1, это выполняется. но выбор идет только по тому району который был выделен последним в списке выбранных , и либо прописать выбор нескольких районов в методе Асcерt – фильтрации ( cм * ) или отдельно по нажатию кнопки Button4 ( см **)
Как быть?