Характеристики на редактиране на колони на таблично поле

Две събития са предназначени да уведомят за началото или края на редактиране на ред в поле на таблица: BeforeBeginChange() и BeforeEndEdit() .

Събитието BeforeStartChange() възниква преди началото на интерактивна промяна в ред на поле на таблица, т.е. при влизане в редактиране при натискане на клавиша Enter или двойно щракване с левия бутон на мишката, както и при изпълнение на командата "Редактиране". Манипулаторът за това събитие има параметър Cancel, който ви позволява да отмените редактирането на ред от поле на таблица. Важна характеристика на това събитие е, че манипулаторът за това събитие се извиква само когато се започне редактиране на съществуващ ред и не се извиква, когато се добави нов ред. Друга важна характеристика е, че това събитие показва точно началото на промяната в реда на полето на таблицата като цяло, а не на която и да е стойност в клетката на реда на полето на таблицата. Следователно при превключване от една колона на поле на таблица, което е в състояние на редактиране, към друга, манипулаторът на това събитие не се извиква.

Събитието BeforeEndEdit () възниква преди края на редактирането на реда, т.е. чрез натискане на клавиша Enter, чрез изпълнение на командата "Край на редактирането" или чрез щракване в друг ред от полето на таблицата. Манипулаторът за това събитие има параметрите NewLine, CancelEdit и Cancel. Параметърът NewLine указва, че редактирането на добавения ред приключва. Параметърът Edit Cancel указва причината, поради която редактирането на реда е приключило. Ако стойността на този параметър е True, тогава редактирането се отменя в резултат на натискане на клавиша Esc. И накрая, опцията Отказ ви позволява да отмените края на редактирането. Важна характеристика на това събитиее, че манипулаторът на това събитие се извиква само когато редактирането на реда е завършено и не се извиква при преминаване от една колона на полето на таблицата към друга.

Ако е необходимо да се проследят промените в данните в клетка от ред на поле на таблица, което е в състояние на редактиране, тогава можете да използвате събитието OnChange() на контролата, свързана с редактираната клетка. Манипулаторът на това събитие се извиква след промяна на стойността в контролата при преместване от една редактируема клетка на таблично поле към друга.