Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
ctrl-end/home в гриде при фильтре дает глюк
|
|||
|---|---|---|---|
|
#18+
если фильтрануть базу от которой грид - на экране все нормально и тд но как только нажмешь ctrl-end или ctrl-home сразу вылазеет окошко с сообщением "THISFORM can only be used within a method" с кнопками ОК/Help или полным набором кнопок, где помогает или ОК или Cancel. При этом фильтр снимается и курсор попадает туда, куда просили, т.е. в конец или в начало. Что это за грабли такие - кто знает? И как фильтровать данные в гриде, если я неправильно действую, накладывая фильр на базу грида. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 15:00 |
|
||
|
ctrl-end/home в гриде при фильтре дает глюк
|
|||
|---|---|---|---|
|
#18+
"THISFORM can only be used within a method" Он же тебе ясно и однозначно сообщает, что дело не в твоих фильтрах и не в гриде, а в месте программы, исползующем ThisForm. Ты, видимо, вызываешь какую-то функцию, не являющуюся методом этой формы, но используешь там ThisForm. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 19:10 |
|
||
|
ctrl-end/home в гриде при фильтре дает глюк
|
|||
|---|---|---|---|
|
#18+
Sergey Sizov "THISFORM can only be used within a method" Он же тебе ясно и однозначно сообщает, что дело не в твоих фильтрах и не в гриде, а в месте программы, исползующем ThisForm. Ты, видимо, вызываешь какую-то функцию, не являющуюся методом этой формы, но используешь там ThisForm. Ха! В том то все и дело ЧТО НЕТ НИКАКИХ ФУНКЦИЙ!!!!!!! Я ничего на эти сочетания клавиш не прописывал, и ТРАСЕ мне тоже абсолютно ничего не дает. Просто при нажатии ctrl-end или ctrl-home по ТРАСЕ видно, что прога попадает в KeyPress, там у меня отлавливание в DO CASE 13, 27 и -6, тоесть ентера, ескейпа или Ф7, видно, что ни одно условие не .T., OVERWISE нет, и по звершению отработки этого события, тоесть KeyPress, мне и вылазит ошибка!!! Получается что нет по дороге ни одной строчки, ни одного слова в программе, связанной с THISFORM. вот если б прокатило хоть одно из трех условий, то вопросов нет, там есть, но не прокатывает же, по ТРАСЕ явно это видно. И вообще, если у меня именно в проге глюк, то почему БЕЗ ФИЛЬТРА ОШИБКИ НЕТ? А только дам фильтр - сразу же по нажатии ctrl-end или ctrl-home. Фильтр снимаю - все ОК, ставлю - глюк! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 11:03 |
|
||
|
ctrl-end/home в гриде при фильтре дает глюк
|
|||
|---|---|---|---|
|
#18+
Приведи код, как именно устанавливаешь фильтр. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 11:20 |
|
||
|
ctrl-end/home в гриде при фильтре дает глюк
|
|||
|---|---|---|---|
|
#18+
не могу запостить сообщение больше чем 67 символов ПОЧЕМУ???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 17:19 |
|
||
|
ctrl-end/home в гриде при фильтре дает глюк
|
|||
|---|---|---|---|
|
#18+
поскольку я дома, кода привести не могу, но распишу все так значит на форме лежит грид и снизу еще пару объектов, как то txtFilterString - сюда юзьверь вводит значение для фильтра cmbFilterType - в комбо выбирается условие, типа =, >, < и тп btnSetFilter - установка фильтра btnClearFilter - снятие фильтра на кнопку btnSetFilter прописано Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Код: plaintext 1. SET FILTER TO PayCateg>1 и при этом он работает и глюка не возникает. но как только выставлю юзерский фильтр так по ctrl-end или ctrl-home глючит. Можно установить юзерский фильтр, спокойно подвигаться по гриду PgUP/PgDown или "курсорными стрелочками", короче делать что угодно, вызывать подчиненную форму и тд и тп, главное не жать на "вуду-клавиши", затем снять фильтр (btnClearFilter) - глюка при нажатии "вуду-клавиш" не будет. я так думаю, что приведенный код ни фига не поможет, Вам бы надо всю форму с базами заслать - тогда другое дело Да, у грида есть на KeyPress прога там Do case и 3 case, для значений 13 (Ентер), 27 (искейп) и -6(F7) на первый случай(13) жмется кнопка, вызывающая подчиненную форму (thisform.btnEdit.Click), по 27 форма уходит в релиз (thisform.release), ну и по ф7 там у меня thisform.txtSearchString.SetFocus (для поиска) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 20:29 |
|
||
|
ctrl-end/home в гриде при фильтре дает глюк
|
|||
|---|---|---|---|
|
#18+
Hi, СТАС-КО! Честно говоря, не совсем представляю почему, может не все описано, но возникает такое ощущение, что в какой-то момент твоя форма теряет фокус, может запускается из нее какая-то прога и там узается таблицка у которой в фильтре прописано Set Filter To ThisForm....., а вот это уже получается, что ThisForm используется за пределами формы. Короче, попробуй сделать так, по идее должно получится: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2005, 09:41 |
|
||
|
ctrl-end/home в гриде при фильтре дает глюк
|
|||
|---|---|---|---|
|
#18+
Нет. Все правильно. В сообщении об ошибке все сказано! ThisForm можно использовать только внутри методов формы . А когда ты устанавлвиаешь фильтр с использованием ThisForm , то происходит примерно следующее: Внутри метода, где осущетсвляется эта установка - все корректно и ошибок не вызывает. Когда метод завершается и ты пытаешся перейти на любую запись таблицы, на которую наложен фильтр, то FoxPro пытается вычислить значение этого фильтра. В данном случае, предпринимается попытка определить значение thisform.txtFilterString.value, но уже вне метода формы! Именно это и вызывает сообщение об ошибке. Выходов несколько, но kms_ предложил самый корректный в данном случае - использовать макроподстановку. Если версия VFP6 и выше, то можно так: Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2005, 11:26 |
|
||
|
ctrl-end/home в гриде при фильтре дает глюк
|
|||
|---|---|---|---|
|
#18+
да, действительно макро помогло!!! и я приммерно так и понял глюк, а что значит синтаксис m. lcMyFilter? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2005, 18:40 |
|
||
|
ctrl-end/home в гриде при фильтре дает глюк
|
|||
|---|---|---|---|
|
#18+
я понимаю Alias.Field, а m.Variable что значит - не понимаю СПАСИБО ЗА ПОМОЩЬ!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2005, 18:44 |
|
||
|
ctrl-end/home в гриде при фильтре дает глюк
|
|||
|---|---|---|---|
|
#18+
2ВладимирМ - при попытке перейти на любую запись - ошибка, а работала любая навигация, только не "вуду"! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2005, 18:51 |
|
||
|
ctrl-end/home в гриде при фильтре дает глюк
|
|||
|---|---|---|---|
|
#18+
я имею в виду PgUP, PgDN, UpArrow, DownArrow, других не знаю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2005, 18:53 |
|
||
|
ctrl-end/home в гриде при фильтре дает глюк
|
|||
|---|---|---|---|
|
#18+
CTAC-KOчто значит синтаксис m. lcMyFilter? Что означает префикс (буква) "m." перед именем CTAC-KO2ВладимирМ - при попытке перейти на любую запись - ошибка, а работала любая навигация, только не "вуду"! Это, скорее, недоразумение. В смысле, что навигация работала. В общем случае - не должна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2005, 22:02 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=33026194&tid=1594376]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
43ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 351ms |

| 0 / 0 |
