Автор | Сообщение |
|
| |
Пост N: 1915
Зарегистрирован: 17.05.05
|
|
Отправлено: 29.12.10 16:01. Заголовок: ON CHANGE (GET)
#include "FiveWin.ch" function Main() LOCAL oDlg, oGet LOCAL cCad := " " DEFINE DIALOG oDlg @ 1,6 GET oGet VAR cCad OF oDlg SIZE 60, 10 on change test(ccad) ACTIVATE DIALOG oDlg CENTERED return nil //------------------------------------------------------------------------// Func test(ccad) msginfo(ccad) return nil Вводим в Get какой символ , но при первом нажатии в функции TEST , пусто. Почему ? Вводим еще символ и только тогда в TEST видим первый введенный символ , без второго
|
|
|
Ответов - 29
, стр:
1
2
All
[только новые]
|
|
|
| Администратор
|
Пост N: 1746
Зарегистрирован: 23.05.05
|
|
Отправлено: 29.12.10 16:18. Заголовок: Введенный символ еще..
Введенный символ еще в буфере ввода, и не сразу попадает в переменную ccad Если испольщовать on change, тогда так: on change test(oGet) Func test(oGet) msginfo(oGet:oGet:buffer) return nil или вызывать oGet:Assign() для присваивания зачения буфера ввода переменной или вместо on change вызывать valid
|
|
|
|
| |
Пост N: 56
Зарегистрирован: 17.06.10
|
|
Отправлено: 29.12.10 16:23. Заголовок: oGet:Changed:{|..
oGet:Changed:{||oGet:Assign(), Test(cCad)} - первое нажатие в бефере Но проще так: private oDlg - для окон всегда так .......................... @ 1,6 GET oGet VAR cCad OF oDlg SIZE 60, 10 on change test() .......................... Func test msginfo(oDlg:aControls[1]:cText() return nil
|
|
|
|
| |
Пост N: 1916
Зарегистрирован: 17.05.05
|
|
Отправлено: 29.12.10 16:45. Заголовок: Pasha fil Спасибо !..
Pasha fil Спасибо !
|
|
|
|
| |
Пост N: 1927
Зарегистрирован: 17.05.05
|
|
Отправлено: 31.12.10 17:15. Заголовок: И снова GET :) Get п..
И снова GET :) Get получает фокус ввода ogts:bGotFocus := { || oGts:Gohome()} и не пашет Get теряет фокус ввод ogts:bLostFocus := { || oGts:SelectAll()} и не пашет Куда копать и что я делаю не так ? PS Get лежит в Диалоге NOWAIT
|
|
|
|
| |
Пост N: 59
Зарегистрирован: 17.06.10
|
|
Отправлено: 31.12.10 17:45. Заголовок: Что значит "не п..
Что значит "не пашет" ? Какой эффект должен быть достигнут ? Ежели надо переместиться в начало GET'a моно написать так: ogts:bGotFocus := { || oGts:PostMsg(WM_KEYDOWN, VK_HOME)} или ogts:bGotFocus := { || oGts:SetPos(1)}
|
|
|
|
| |
Пост N: 1928
Зарегистрирован: 17.05.05
|
|
Отправлено: 31.12.10 17:57. Заголовок: fil пишет: ogts:bGo..
fil пишет: цитата: | ogts:bGotFocus := { || oGts:SetPos(1)} |
| В том и дело что курсор оказывается в том месте где я ткнул мышкой и совсем не в первой позиции , почему и спросил fil пишет: цитата: | ogts:bGotFocus := { || oGts:PostMsg(WM_KEYDOWN, VK_HOME)} |
| То же самое только все слева от курсора получается выделенным , но курсор именно там где я ткнул мышкой а не "ДОМА" Ситуация следующая. Первый раз попали в GET , курсор на 1 позиции .......побродили в бровсе не закрывая GET и затем в него возвращаемся и на первую позицию не попадаем даже если в bGotFocus прописано встать на 1 позицию. Где засада ?
|
|
|
|
| |
Пост N: 60
Зарегистрирован: 17.06.10
|
|
Отправлено: 31.12.10 18:20. Заголовок: Ага, я тебе в личку ..
Ага, я тебе в личку напиcал
|
|
|
|
| |
Пост N: 1929
Зарегистрирован: 17.05.05
|
|
Отправлено: 31.12.10 18:38. Заголовок: fil пишет: Ага, я т..
fil пишет: цитата: | Ага, я тебе в личку напиcал |
| Получил , спасибо. Честно говоря такой костыль вызвал удивление. И вот так во многих местах в FW до которых добрались мои рученки , везде нужен какой то коcтыль. Почему код ogts:bGotFocus := { || oGts:SetPos(1)} не срабатывает ясно наверное только господину Линаресу , либо я не так понимаю как это работает (молчу уже про систему координат в окне и в диалоге и разницу в масштабе в 2 раза ......это что то и наверное живет только в FW ) Можешь внести ясность ?
|
|
|
|
| |
Пост N: 61
Зарегистрирован: 17.06.10
|
|
Отправлено: 31.12.10 18:51. Заголовок: Не, не могу. Интуити..
Не, не могу. Интуитивно я понимаю, что надо делать так или иначе, а вот обяснить.. это к ММК
|
|
|
|
| |
Пост N: 1930
Зарегистрирован: 17.05.05
|
|
Отправлено: 31.12.10 18:55. Заголовок: fil пишет: а вот об..
fil пишет: цитата: | а вот обяснить.. это к ММК |
| Он не особо любит такие мелкие вопросы и весьма вероятно уведет разговор в другое русло и на вопрос ответа не будет
|
|
|
|
| постоянный участник
|
Пост N: 37
Зарегистрирован: 29.05.10
|
|
Отправлено: 31.12.10 20:36. Заголовок: Dima пишет: Он не о..
Dima пишет: цитата: | Он не особо любит такие мелкие вопросы и весьма вероятно уведет разговор в другое русло и на вопрос ответа не будет |
| А вопрос не мелкий. Т.к. он сильно напоминает анекдот про японскую лесопилку , которую наши мужики все же ломом добили.. Если речь идет о GET нормальной ориентации , то можно покопать , а если ты по прежнему пытаешься "доработать" xBrows всовывая ему свой GET то это к Линарису :))) У меня есть к тебе предложение. Сделай простенький примерчик с диалогом без NOWAIT и GETом тогда будет проще что-то понять и посоветовать. Давйте лучше поздравим друг друга с Новым Годом! :))
|
|
|
|
|
| |
Пост N: 1931
Зарегистрирован: 17.05.05
|
|
Отправлено: 31.12.10 21:47. Заголовок: ММК пишет: Давйте л..
ММК пишет: цитата: | Давйте лучше поздравим друг друга с Новым Годом! :)) |
| Я знал что ты уведешь тему в другое русло С наступающим Новым годом тебя дружище !!! ПС ММК пишет: цитата: | а если ты по прежнему пытаешься "доработать" xBrows всовывая ему свой GET то это к Линарису :))) |
| Я и не пытался это сделать. Речь идет про обычный поиск в бровсе с помощью Get , который живет в NOWAIT диалоге. Не вижу в этом ни чего не обычного. Ведь без NOWAIT , для того что бы переключится в бровс , диалог нужно закрыть.
|
|
|
|
| Администратор
|
Пост N: 1753
Зарегистрирован: 23.05.05
|
|
Отправлено: 31.12.10 22:57. Заголовок: Dima пишет: Речь ид..
Dima пишет: цитата: | Речь идет про обычный поиск в бровсе с помощью Get |
| Я вижу, что, несмотря на накрытый стол и водку в холодильнике, заседание продолжается :) Вставлю и свои 5 копеек. Я для поиска в бровсе обычно вставляю get в панель кнопок oBar. Иногда для бровса делаю переключение режима редакции/поиска. Если включен режим поиска - при наборе с клавиатуры выполняется поиск в активной колонке. Строку поиска при этом отображаю в oMsgBar
|
|
|
|
| |
Пост N: 1933
Зарегистрирован: 17.05.05
|
|
Отправлено: 01.01.11 00:35. Заголовок: Pasha Спасибо за ид..
Pasha Спасибо за идею.
|
|
|
|
| |
Пост N: 1967
Зарегистрирован: 17.05.05
|
|
Отправлено: 09.01.11 16:05. Заголовок: Есть кучка числовых ..
Есть кучка числовых GET в диалоге. В Picture везде присутствует "@Z" , тем не менее при нулевых значениях нолики все равно рисуются. Как это исправить ?
|
|
|
|
| |
Пост N: 69
Зарегистрирован: 17.06.10
|
|
Отправлено: 09.01.11 16:33. Заголовок: Я писал свою обработ..
Я писал свою обработку для цифрового GET'a, но наверное можно после иициализации изобразить oDlg:aControls[nn]:cText(space(нужное число)).
|
|
|
|
| |
Пост N: 1968
Зарегистрирован: 17.05.05
|
|
Отправлено: 09.01.11 18:04. Заголовок: fil Попробую. Спаси..
fil Попробую. Спасибо.
|
|
|
|
| |
Пост N: 70
Зарегистрирован: 17.06.10
|
|
Отправлено: 09.01.11 18:21. Заголовок: Или наоборот - делае..
Или наоборот - делаем GET с PICTURE "X" и переменной в виде строки, а на bGotFocus прописываем туда PICTURE "99.99.99..."
|
|
|
|
| |
Пост N: 1969
Зарегистрирован: 17.05.05
|
|
Отправлено: 09.01.11 18:22. Заголовок: Что то застрял на ро..
Что то застрял на ровном месте , в Clipper это все делалось довольно просто. local ons:=0 local ons1:=0 local ons2:=0 @ 52,150 get ogts var ons picture "@Z@K 999999.999" ; // первый of odlz ; size 130,27 ; on change (ogts:assign(),if(ons==0,eval({||ons1:=0,ons2:=0}),""),; ogts1:assign(),ogts2:assign(),ogts1:refresh(),ogts2:refresh()) @ 82,150 get ogts1 var ons1 picture "@Z@K 9999" ; // второй when if(ons>0 .or. ons2>0,.f.,.t.) ; of odlz ; size 130,27 @ 112,150 get ogts2 var ons2 picture "@Z@K 9999.9" ; // третий when if(ons>0 .or. ons1>0,.f.,.t.) ; of odlz ; size 130,27 В первом GET ввожу цифру больше нуля , но второй и третий GET внешне остаются доступными Вроде в ON CHANGE первого GET все верно написал.
|
|
|
|
| |
Пост N: 71
Зарегистрирован: 17.06.10
|
|
Отправлено: 09.01.11 18:34. Заголовок: А незя так написать ..
А незя так написать on change if(empty(oGts), (oGts1:cText(0), oGts2:cText(0)),"") и ничего рефрешить не надо и вобще лучше пользовать aControls а не конкретные имена
|
|
|
Ответов - 29
, стр:
1
2
All
[только новые]
|
|