|
|
|
Как программно перейти к следующему объекту на форме?
|
|||
|---|---|---|---|
|
#18+
Привет! Ну проблемка даже несколько глубже порылась... короче в гриде из 3х колонок enabled=.t. тока у третьей. и вот юзьвери при заполнении оной колонки хотят ентером переходить на следующую строку, а не оставацца в той же. 1) Как это сделать? я сделал в объекте textbox третьей колонки в событии keypress на 13 код (по самому гриду это не канает) методом Код: plaintext 1. 2. 2) как сделать это? я попробовал опирацца на eof() в том же месте, где ентер ловлю, но сия фукция почему-то всегда и везде и в последней строке втч дает сиравно .F. - не подходит... В итоге выход мне видицца такой = там, где обрабатываю ентер, на клавишу ТАВ вписать setfocus тока не знаю как узнать какой объект у мну следующий в порядке таб-ордера, чтобы на него фокусом приложицца... тупо прописывать на какой конкретно объект, смотря на форму - не хочецца, хочецца универСальности :) чегой-то типа thisform.taborder.nextobject.setfocus или thisform.taborder.next ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 17:20 |
|
||
|
Как программно перейти к следующему объекту на форме?
|
|||
|---|---|---|---|
|
#18+
Попробуй в объекте textbox LostFocus() прописать что-то типа Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 17:35 |
|
||
|
Как программно перейти к следующему объекту на форме?
|
|||
|---|---|---|---|
|
#18+
У объектов есть свойство TabIndex. Вот перебирай обьекты на форме , ищи у которого табиндекс следующий - и переходи на него ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 17:36 |
|
||
|
Как программно перейти к следующему объекту на форме?
|
|||
|---|---|---|---|
|
#18+
ну есь такое свойство - TabIndex. Оно задает объекту порядок установки фокуса при перемещении кнопулей ТАВ. можно установить програмно иное, можно узнать текущее значение. ну я, допустим, понимаю так - мне нужен объект TabIndex+1 и как одуплить его название? не могу ж я написать thisform.TabIndex+1.setfocus ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 17:45 |
|
||
|
Как программно перейти к следующему объекту на форме?
|
|||
|---|---|---|---|
|
#18+
Dima TПопробуй в объекте textbox LostFocus() прописать что-то типа Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 17:47 |
|
||
|
Как программно перейти к следующему объекту на форме?
|
|||
|---|---|---|---|
|
#18+
Получаем с помощью AMEMBERS обьекты формы - далее поиск по массиву ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 17:52 |
|
||
|
Как программно перейти к следующему объекту на форме?
|
|||
|---|---|---|---|
|
#18+
Все просто. Thisform.MyObj.SetFocus() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 18:44 |
|
||
|
Как программно перейти к следующему объекту на форме?
|
|||
|---|---|---|---|
|
#18+
-=AlexiS=-Получаем с помощью AMEMBERS обьекты формы - далее поиск по массиву т.е. ниче проще нету чем путем конверсии:) в массив? т.е. нада сложить имена всех объектов в массив и из него достать элемент TabIndex+1 и тем самым получить его имя? тока в хелпах по этой фукции я ниче нащет TabIndex не увидел... а оно массив-то по соотвецтвию с TabIndex формы выложит? ORAselectВсе просто. Thisform.MyObj.SetFocus() дык вопрос-то собсенна в том, как получить MyObj через TabIndex ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 19:11 |
|
||
|
Как программно перейти к следующему объекту на форме?
|
|||
|---|---|---|---|
|
#18+
посмотри в запущенном виде _screen.activeform.... в дебаге. Там все видно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 23:00 |
|
||
|
Как программно перейти к следующему объекту на форме?
|
|||
|---|---|---|---|
|
#18+
Кстати, вся форма - сплошной масив. thisform.controls thisform.objects ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 23:04 |
|
||
|
Как программно перейти к следующему объекту на форме?
|
|||
|---|---|---|---|
|
#18+
Вобщем попробовал я сделать так (это в текстбоксе грида): Код: plaintext 1. 2. 3. немного переделал Код: plaintext 1. 2. 3. 4. затем сделал так: Код: plaintext 1. 2. 3. 4. 5. 6. В любом случае, таким образом выходит что у меня следующим объектом идет тот самый лейбл LBLCASETYPE, что совершенно не соответствует раздаче TabOrder-a на форме да и смотрел я полученный массив - там вообще порядок совершенно не такой как на форме и TabOrder-у не соответствует, чего и следовало ожидать... че делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 12:17 |
|
||
|
Как программно перейти к следующему объекту на форме?
|
|||
|---|---|---|---|
|
#18+
заработало вот так(это в текстбоксе грида): Код: plaintext 1. 2. 3. 4. 5. 6. Вот только не знаю насколько грамотна такая организация перехода кнопкой ТАВ из грида на следующий объект формы... может как-то по-другому надо/можно/лучше? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 12:46 |
|
||
|
|

start [/forum/topic.php?fid=41&fpage=223&tid=1590293]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
66ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
| others: | 252ms |
| total: | 434ms |

| 0 / 0 |
