|
Изменение текущего значения поля в itemchanged
|
|||
---|---|---|---|
#18+
На окошке есть объект dw_1, у dataobject это объекта 3 колонки: col_1, col_2, col_3, у всех них есть возможность редактирования. Что нужно: Создаем новую строку в dw_1. В поле col_1 вписываем какое-то числовое значение. Кликаем в другое поле (например, col_2) и значение col_1 должно стать col_1 + 1. В чем возникла проблема: делаю в событии itemchanged вот что: dw_1.object.col_1[row] = dw_1.object.col_1[row] + 1 и это событие нормально отрабатывает, но после почему-то всё равно подставляется значение col_1. Что-то я не то делаю. Помогите, плиззз. Заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2009, 09:00 |
|
Изменение текущего значения поля в itemchanged
|
|||
---|---|---|---|
#18+
Текущее значение находится в строковом параметре события data Если хотите оставить свое выражение - вынесите его в отдельный event и вызывайте его как post ----------------------------------------------------------------------------- Главная деталь любой машины - голова ее владельца ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2009, 09:39 |
|
Изменение текущего значения поля в itemchanged
|
|||
---|---|---|---|
#18+
spas2001, спасибо. Работает :) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2009, 09:56 |
|
Изменение текущего значения поля в itemchanged
|
|||
---|---|---|---|
#18+
Я как то сталкивался с проблемами POST для вызова событий, особенно если ставить их в очередь. Они могут выполниться не в той последовательности как хотелось бы ... Есть еще такой метод (в itemchanged ): choose case dw.name case 'col_1' dw_1.object.col_1[row] = dw_1.object.col_1[row] + 1 return 2 case ... обработка других колонок/полей end choose Вся фишка в RETURN 2, ибо как пишет "коран": Set the return code to affect the outcome of the event: 0 (Default) Accept the data value 1 Reject the data value and do not allow focus to change 2 Reject the data value but allow the focus to change CHOOSE CASE - только для наглядности ... Точно не помню, но возможно еще надо в ItemError для этого случая дописать RETURN 2 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2009, 20:11 |
|
|
start [/forum/topic.php?fid=15&fpage=30&tid=1336151]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
39ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
others: | 303ms |
total: | 422ms |
0 / 0 |