Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Возможно ли такое решение: - есть грид со множеством строк в котором пользователь может выбрать (активировать) любую строку. - потом он нажимает кнопку... например: редактировать... и после этого можно редактировать только эту строку... и перейти на другую нельзя... Это хочу сделать так чтобы редактирование записи было непосредственно в гриде и чтобы пользователь не смог случайно изменить данные в другой какой то строке. PS: знаю что редактирование непосредственно в гриде - не очень правильная идея... но хотелось-бы максимально упростить ввод данных для пользователя... ему так более понятно.. и не путается... Просто хочу знать есть ли ПРОСТОЕ решение этой задачи и СТОИТ ЛИ с этим связываться. powered by Visual FoxPro 8.0 SP1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 10:50 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
1) В форме новая пропертя editrow 2) После нажатия кнопки "Редактировать" thisform.editrow=recn() 3) В rowcolchange грида не пускаешь никуда кроме thisform.editrow ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 11:16 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Добрый день, Help123. Думаю следует сделать нечто подобное: Табличка в которой я буду редактировать записи называется a1. Свойство Грида ReadOnly=.t. В методе Click кнопки пишите: Код: plaintext 1. 2. В методе Грида AfterColRowChange: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 11:18 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Ilhom_uz1) В форме новая пропертя editrow 2) После нажатия кнопки "Редактировать" thisform.editrow=recn() 3) В rowcolchange грида не пускаешь никуда кроме thisform.editrow А можно поподробнее с кодом... буду очень признателен... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 13:13 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Help123, так llhom_uz говорит как раз о том коде, который я тебе и прописал, только вместо новой "проперти" editrow я использую, как правило, свободную "пропертю" грида Tag. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 13:24 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
kms_Help123, так llhom_uz говорит как раз о том коде, который я тебе и прописал, только вместо новой "проперти" editrow я использую, как правило, свободную "пропертю" грида Tag. Ваш код конечно хорош, но мне бы хотелось именно недать переместится пользователю на другую строку, а не предупреждать его об этом....... или я чего-то не понял.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 13:27 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Дело в том, что код не предназначен для того, чтобы просто предупредить пользователя. Его цель следуюшая, если пользователь смещается на другу строку, то это может быть сделано по двум причинам: 1. случайно 2. он закончил процесс редактирования текущей записи Поэтому я и использую MessageBox для того, чтобы уточнить хочет ли пользователь продолжить редактирование, и тогда я оставляю его на этойже записи: Код: plaintext или пользователь завершил редактирование, тогда надо разрешить переход на другую запись, с одновременной блокировкой грида от дальнейших изменений до следующего нажития кнопки "Редактировать": Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2005, 13:49 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Hi help123! Глупый ты интерфейс задумал однако. Я бы такую прогу пользовать не стал... Но если уж так надо - то по нужному тебе признаку (режим редактирования) и анализируя Grid.RowColChange (куда хотят уйти - на другую строку, или лишь на другую колонку) выполняй блокировку перехода между ячейками через NODEFAULT в обработчике Grid.BeforeRowColChange() Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 03:31 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Igor Korolyov выполняй блокировку перехода между ячейками через NODEFAULT в обработчике Grid.BeforeRowColChange() а можно по подробнее с примером кода. Я такого никогда не делал... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 12:44 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Hi, Help123, только не подумайте, что я вам навязываю свой код, меня просто обуревает спортивный интерес. Неужели мой код не работает - я его опробовал и все ОК! Или все-таки что-то не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 13:41 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
kms_Hi, Help123, только не подумайте, что я вам навязываю свой код, меня просто обуревает спортивный интерес. Неужели мой код не работает - я его опробовал и все ОК! Или все-таки что-то не так? Да нет все прекрасно работает... это я такой правильный... Просто у Вас код работает тогда - когда пользователь уже перешел на другую строку... а я вообще хочу не дать ему такого права... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 14:51 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Ясненько... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 15:11 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Пробовал я решить проблемку, вставив код в метод BeforeRowColChange, но там есть проблемка, у меня так и не получилось определить из этого метода намерения пользователя, то есть не могу получить номер строки куда пользователь собирается перейти, а это было бы решением проблемы. Попробую открыть новый топик может кто и подскажет! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 16:43 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
kms_Пробовал я решить проблемку, вставив код в метод BeforeRowColChange, но там есть проблемка, у меня так и не получилось определить из этого метода намерения пользователя, то есть не могу получить номер строки куда пользователь собирается перейти, а это было бы решением проблемы. Попробую открыть новый топик может кто и подскажет! А зачем знать на какую строку он собирается перейти? Достаточно факта что он просто хочет кудато перейти, а для этого должно хватить nColIndex из BeforeRowColChange и Grid.RowColChange. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 16:47 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
AleksMedдолжно хватить nColIndex из BeforeRowColChange и Grid.RowColChange. Я не знаю, но у меня нет RowColChange в гриде, а nColIndex выдает номер столбца, причем текущего, что в данной задаче ничего не дает. Или я чего-то не знаю? И еще у меня VFP 5.0 может RowColChange появился в более поздних версиях? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 16:53 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
kms_И еще у меня VFP 5.0 может RowColChange появился в более поздних версиях? Вот про это не скажу. 6-ку снес давно, работаю на 7-ке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 16:56 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Ясненько, тогда интересно, что у Help123 стоит, если тоже старушка пятерка, то я еще попробую помочь, а если версии поновее, то тут уж извиняйте... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 16:59 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Ну все, надыбал VFP 8.0 и, действительно, там есть свойство RowColChange, вот бы мне его в пятерке! Короче метод Click кнопки "редактировать" остается как был, а метод AfterColRowChange с легкими изменениями перемещаем в метод грида BeforeColRowChange Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Help123, теперь-то вам правильному должно подойти проверял - работает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 17:10 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Ну так у тебя же теперь есть 8-ка ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 17:14 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
kms_Help123, теперь-то вам правильному должно подойти проверял - работает Спасибо большое... обязательно попробую как только доберусь до Фокса... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 17:30 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
AleksMedНу так у тебя же теперь есть 8-ка Ну да, теперь есть, только вот что-то боязно как-то переходить на нее! Инерция мышления'с понимаете ли!!! Она то у меня уже давно валялась на компакте, но так и не дошли руки. Зато теперь наверное точно перейду! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 17:37 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Так мож сразу на 9-ку? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 17:38 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Дык 8-ка есть, а девятку еще и достать-то надо! Да и насколько я понял пока доступна только бетта-версия, а я чтой-то не очень отношусь к этой приставке "бетта" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 17:57 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Hi kms_! Вот с NODEFAULT вариант мне нравится - это идеологически выдержано :) не "кидаем обратно", а не даём перейти. Хотя САМА ИДЕЯ мне по прежнему не нравится - не дело это программы указывать мне куда ходить, а куда - нет. Нечего тогда грид показывать/править в нём - если уж такой "позаписный" подход реально нужен. А насчёт 9-ки ты не прав - уже давно вышел релиз. Другой вопрос что там как всегда обнаружилось пару неисправленных багов - ну да шанс на них нарваться не так уж и велик :) Тем более что они среди "новшеств" живут. Версия релиза имеет номер 09.00.0000.2412 смотри чтоб не накололи пираты :) Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2005, 02:46 |
|
||
|
Grid - не дать пользователю перейти на другую строку ...
|
|||
|---|---|---|---|
|
#18+
Igor KorolyovХотя САМА ИДЕЯ мне по прежнему не нравится - не дело это программы указывать мне куда ходить, а куда - нет. Я с вами совершенно согласен, но вот, что писал help123 в самом начале: help123знаю что редактирование непосредственно в гриде - не очень правильная идея... Вот я и решил, что если это его осознанный выбор, то почему бы не помочь! А на счет девятки - попробую найти! Вам спасибо за информацию! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2005, 09:21 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32976456&tid=1594572]: |
0ms |
get settings: |
11ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
68ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
89ms |
get tp. blocked users: |
2ms |
| others: | 239ms |
| total: | 455ms |

| 0 / 0 |
