У меня есть fowm с компонентом TAdvStringGrid. Столбец 0 сетки содержит несущественную группу целых чисел, а столбец 1 содержит строку, которая может быть пустой или одно слово. В столбце 1 есть редактор edComboList inplace, который включает допустимые значения. Я пытаюсь установить значения в столбце 1 в подпрограмме.TAdvStringGrid не может обновить выбранную ячейку
Код ниже работает, за исключением выбранной ячейки. Текстовое значение в этой ячейке остается неизменным. Я подозреваю, что это связано с тем, что для этого столбца есть редактор, но я не могу понять, как отключить редактор перед выполнением обновления, или даже определить, какая ячейка в данный момент используется в коде.
int MyForm::SetAC(String & Flt, String & AC) {
TFindParams fp = TFindParams();
fp << fnFindInPresetCol << fnMatchFull;
// sgFlights is the name of the TAdvStringGrid
TPoint p = sgFlights->Find(TPoint(0, 0), Flt, fp);
if (p.y > 0) {
sgFlights->Cells[1][p.y] = AC;
}
return p.y;
}
void MyForm::LoadFACfromGDB() {
std::map<int, String>FlightMatcher;
// .. code to populate flight matcher...
map<int, String>::const_iterator itr;
for (itr = FlightMatcher.begin(); itr != FlightMatcher.end(); ++itr) {
String Flt = IntToStr(itr->first);
String AC = itr->second;
SetAC(Flt, AC);
}