Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Нужен совет с доработкой кода
|
|||
|---|---|---|---|
|
#18+
Вообщем есть вот такой код (не мой, я вообще в Fox Pro новичёк) ..... browse for b.gr = xyz fields b.dec:H='Расход':V=(b.dec<=b.saves):10,; b.name:H = 'Наименование товара':30:R,; b.saves:H='Остаток':R:10,b.price:H = 'Цена':R:10; Font 'Courier New',10 Style 'BI'; Title 'Введите нужный расход Общий выбор - <ENTER>' window damm2 on key endproc ..... Я так понял он делает выборку из какой-то таблицы. Моя задача дописать код, чтобы при нажатии на кнопку клавы в этой выборке выбирались только те которые начинаються на ту букву на которую нажал. sql запрос я написал, это легко Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2004, 01:31 |
|
||
|
Нужен совет с доработкой кода
|
|||
|---|---|---|---|
|
#18+
ASC() – возвращает ASCII код символа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2004, 03:10 |
|
||
|
Нужен совет с доработкой кода
|
|||
|---|---|---|---|
|
#18+
Было бы неплохо узнать версию FoxPro, но, поскольку используется BROWSE-окно, то, скорее всего, речь идет о FoxPro for DOS. Проблема в том, что FPD - это чисто процедурный язык. В большинстве случаев, в нем приходится симулировать события. Команда BROWSE предназначена для отображения содержимого таблицы. В принципе, в ней можно добавить FOR-условие, чтобы она еще и фильтровала записи. Дополнительная проблема в том, что BROWSE-окно в таком синтаксисе - это точка останова. Т.е. код следующий за ней будет выполнен только после закрытия собственно BROWSE-окна. Насколько я помню, единственным способом перехватить нажатие клавиши в FPD была функция ON KEY LABEL Т.е. придется на каждую букву писать свою настройку ON KEY LABEL. Очень муторное занятие. Проще сделать одну горячую клавишу по которой открывается дополнительное окно для ввода текста фильтра. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2004, 13:15 |
|
||
|
Нужен совет с доработкой кода
|
|||
|---|---|---|---|
|
#18+
Угумс, информацию принял к сведенью. Да, не всё так просто, как казалось, будемс разбираться :) ЗЫ Вообще написано на Visual FoxPro 5 А что browse окно это прошедший день? Вроде смотрится нормально. Кстати, что меня сильно удивило все окна и кнопки в программе прописаны вручную! :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2004, 23:27 |
|
||
|
Нужен совет с доработкой кода
|
|||
|---|---|---|---|
|
#18+
Browse-окно в VFP - это прежде всего средство отладки . Т.е. разработчику нужно по быстрому посмотреть содержимое таблицы или проверить работоспособность некоего кода при модификации данных. Основаная проблема BROWSE-окна в его неуправляемости. Тот же перхват нажатия клавиши для Browse-окна почти "неподъемная" задача. Browse-окно - это как бы "вещь в себе". Почти ничего не торчит снаружи, за что его можно было бы ухватить и "доработать напильником по месту" Поскольку у тебя VFP5, то вместо BROWSE создай форму с Grid. Вот у него, для соответсвующего TextBox можно обработать событие KeyPress и никакой мороки с ON KEY LABEL. Хотя, повторюсь, с моей точки зрения, сама постановка задачи некорректная. А если "рука дрогнула"? А запрос выполняетс несколько секунд? Такие фильтры делаются как минимум, через дополительные TextBox, как максимум, отдельные формочки. Ввел ключ для поиска, затем нажал кнопку и получил результат. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2004, 00:00 |
|
||
|
Нужен совет с доработкой кода
|
|||
|---|---|---|---|
|
#18+
Может, я, конечно, ошибаюсь, но – рискну предположить, что под это весьма размытое условие задачи идеально подходит элементарный ComboBox с IncrementalSearch=.T. Ведь необходимо выбрать наиболее подходящее из списка значение (например, название улицы) и передать его «дальше» по программе для последующего использования, так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2004, 18:45 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32825832&tid=1595242]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
68ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
| others: | 227ms |
| total: | 405ms |

| 0 / 0 |
