Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
 Непонятное поведение TAdvStringGrid  [new]
Кареглазая_зая
Member

Откуда:
Сообщений: 38
Здравствуйте, подскажите пожалуйста, в чем может быть проблема. Есть форма на которой расположен StringGrid. Если случайно выбрать одну из ячеек, а потом нажать на кнопку добавить, добавляется строка, но в столбец 3 вставляется значение ячейки, которая было случайно выделена.

procedure TForm_ServiceWizard.act_AddFrmExecute(Sender: TObject);
var
  i: integer;
begin
  if (asgFormuls.Focused) or (PageControl1.ActivePage = AdvTabSheet_2_Formuls) then
  begin
    if asgFormuls.Cells[2, asgFormuls.rowcount - 1] <> '' then
    begin
      asgFormuls.AddRow;
      asgFormuls.Cells[2, asgFormuls.rowcount - 1] := '01.' + AddChar('0',
        gOperDateMonth, 2) + '.' + gOperDateYear;
      asgFormuls.Cells[3, asgFormuls.rowcount - 1] := '';
      asgFormuls.SelectRows(asgFormuls.RowCount - 1, 1);
      asgFormuls.Col := 2;
      asgFormulsEditingDone(asgFormuls);
      for i := 1 to asgFormuls.RowCount - 1 do
      begin
        //if (asgFormuls.Cells[3,i]=gMaxDate) then
        if TFormulServ(asgFormuls.objects[0, i]).dat_po = gMaxDate then
        begin
          asgFormuls.Cells[3, i] := DateToStr(strToDate(asgFormuls.Cells[2,
            asgFormuls.rowcount - 1]) - 1);
          asgFormuls.SelectRows(i, 1);
          asgFormuls.Col := 3;
          //TFormulServ(asgFormuls.Objects[0,i]).dat_po:=asgFormuls.Cells[3,i];
          asgFormulsEditingDone(asgFormuls);   
        end;
      end;
      asgFormuls.SelectRows(asgFormuls.RowCount - 1, 1);
    end;

  end;
end;


Вот код, на кнопку Добавить. Вроде как программно задается
asgFormuls.Cells[3, asgFormuls.rowcount - 1] := '';
, однако после строки
asgFormuls.Col := 2;
значение ячейки почему-то меняется

К сообщению приложен файл. Размер - 21Kb
8 май 19, 11:33    [21880796]     Ответить | Цитировать Сообщить модератору
 Re: Непонятное поведение TAdvStringGrid  [new]
Кареглазая_зая
Member

Откуда:
Сообщений: 38


К сообщению приложен файл. Размер - 17Kb
8 май 19, 11:34    [21880797]     Ответить | Цитировать Сообщить модератору
 Re: Непонятное поведение TAdvStringGrid  [new]
Кареглазая_зая
Member

Откуда:
Сообщений: 38


К сообщению приложен файл. Размер - 20Kb
8 май 19, 11:34    [21880798]     Ответить | Цитировать Сообщить модератору
 Re: Непонятное поведение TAdvStringGrid  [new]
Aleksandr Sharahov
Member

Откуда: Москва
Сообщений: 1741
Кареглазая_зая,

можно попробовать снять выделение или завершить редактирование перед добавлением строки
8 май 19, 12:31    [21880869]     Ответить | Цитировать Сообщить модератору
 Re: Непонятное поведение TAdvStringGrid  [new]
Кареглазая_зая
Member

Откуда:
Сообщений: 38
Aleksandr Sharahov, а как снять выделение?
8 май 19, 14:28    [21881090]     Ответить | Цитировать Сообщить модератору
Все форумы / Delphi Ответить