Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
Есть у нас такое волшебное свойство у поля ввода в DW - Required Все хорошо в нем - одно плохо. КОгда попадаешь в это поле пока не заполнил его не выйдешь - ХОРОШО. Но если тыкать мышью в Tab-ы , кнопки - в этом же окошке - пожалуйста. Никто не пробовал для окна сделать так, что если уж попали в такое поле ввода , чтоб ничего кроме ввода не работало в нем ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 11:37 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
Обработка Losefocus здесь не поможет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 12:26 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
Если я не ошибаюсь, Losefocus относится к DataWindow и к отдельному полю не применимо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 12:30 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
hurrЕсть у нас такое волшебное свойство у поля ввода в DW - Required Все хорошо в нем - одно плохо. КОгда попадаешь в это поле пока не заполнил его не выйдешь - ХОРОШО. ПЛОХО. Никто не пробовал для окна сделать так, что если уж попали в такое поле ввода , чтоб ничего кроме ввода не работало в нем ? Нет. Если сделает кто-то другой в пределах досягаемости - оторву руки и кое-что- ещё ;). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 12:39 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
Dim2000 hurrЕсть у нас такое волшебное свойство у поля ввода в DW - Required Все хорошо в нем - одно плохо. КОгда попадаешь в это поле пока не заполнил его не выйдешь - ХОРОШО.ПЛОХО. Аргументируйте пожалуста... ;-) --- С уважением, IKAR ikarhomecenter@narod.ru IkarHomeCenter ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 12:43 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
urvasЕсли я не ошибаюсь, Losefocus относится к DataWindow и к отдельному полю не применимо.Веутри dwo фокус перекинуть и так не получится, а проверить, что происходит попытка покинуть dwo не введя required данные - где, как не в losefocus? С невмеру воинственным Dim2000 можно согласиться в том, что это не самый user frendly подход к интерфейсу. Визарды зачем изобретали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 12:45 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
не поможет Делаем DW с одним полем и ставим ему свойство "Required" Ложим в него еще 10 кнопок все DW помещаем на 128-ю TabPage_128 в окне W_1 с Tab-Control Tab_1 Ставим курсор в поле. А теперь жмем куда угодно. Внутри DW-Control перемещатся не будем. А вот в нутри окна по другим закладкам , да по тем же кнопкам в DW - без проблем. Прям не знаю че делать... Ситуация то какая - чтоб понятнее было. Попал он (Юзверь) в поле такое. Прям как в капкан. Выйти не может. Все - как зверю ему лапу то в капкане защемило. Тока зверя жалко, а узера - нет. Ну вот а МегаМозг то не спит - работает , у них же "то разум горит, то брезжит едва"(с)БГ . Он давай мышкой везде тыкать. Сообщения то мы почитали (типа "Не заполнено... ")- почитали да бросили. И тут - опа другие закладки то доступны , да кнопки то нажимаюца - от так он думает "заборол я прогу - терь я хакер". И давай мне названивать , а прога ваша вся прям не работает - вот в 128 закладке у нас не вводяца диагнозы. Ане водяца в поле ввода в другом то окне почему ? А потому как фокус туда не может попасть (что вобщем то прально) Понятно что можно написать некое частное решение , но хотелось бы просто чтоб общее было - есть свойство у поля ввода и если оно выставлено - то все мышой в этом окне нефиг тыкать.А в другие окна\меню - пожалста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 12:50 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
Dim2000 Нет. Если сделает кто-то другой в пределах досягаемости - оторву руки и кое-что- ещё ;). Руки коротки ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 12:53 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
Sorry for misprints. User friendly, 'course... hurrПопал он (Юзверь) в поле такое. Прям как в капкан. Выйти не может. Все - как зверю ему лапу то в капкане защемило. Тока зверя жалко, а узера - нет. Ну вот а МегаМозг то не спит - работает , у них же "то разум горит, то брезжит едва"(с)БГ . Он давай мышкой везде тыкать. Сообщения то мы почитали (типа "Не заполнено... ")- почитали да бросили. И тут - опа другие закладки то доступны , да кнопки то нажимаюца - от так он думает "заборол я прогу - терь я хакер". И давай мне названивать , а прога ваша вся прям не работает - вот в 128 закладке у нас не вводяца диагнозы. Диагнозы, говорите... BTW, а траву где берете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 12:58 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
Надо то просто клики мышой вне DW-control в котором в Required поле попали , полюс занать его самого первого предка , парента - окна в смысле где оно лежит... Если ткнули в каком либо другом контроле , который лежит в окне - то фиг , а если открываем другое окно , или в меню основной проги - прожалста ... Или еще - перед спрашивать, а вот вы это не заполнили то - че бум заполнять и не бум уходить или вы полностью контролируете свои дейстивия и знаете куда хотите мышой ткнуть и вся ответственость за последствия тыканья лежит на вас ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 13:00 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
IkarАргументируйте пожалуста... ;-) Совсем не User-friendly, скорее, User-hostile. Данные в полях ввода в ходе редактирования имеют право быть невалидными. Они должны быть валидными только в момент нажатия кнопки 'Ok', тогда их и нужно проверять. http://www.akzhan.midi.ru/iarchitect/mshame.htm Один из фундаментальных принципов построения графического пользовательского интерфейса - тот, что пользователю должно позволяться исследовать интерфейс. Выполняя валидацию поля в тот момент, когда пользователь его покидает, Oracle без надобности препятствует пользователям изучать диалог. Диалог следовало построить так, чтобы проверка значений полей происходила только после нажатия пользователем кнопки OK. В данном случае Oracle применил линейную модель к интерфейсу по определению нелинейному. Если в основе процесса выбора новой базы данных безусловно лежит линейная модель, то Oracle'у следовало использовать линейную модель, типа Мастера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 13:03 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
Enlighten me Диагнозы, говорите... BTW, а траву где берете? У Службы Мед статистики. У них по моему где то плантации. =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 13:06 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
Enlighten meС невмеру воинственным Dim2000 можно согласиться в том, что это не самый user frendly подход к интерфейсу. Визарды зачем изобретали? Вот-вот, и я о том же. А вообще, я белый и пушистый . В ситуации, если нужно обязательно что-то заполнить на первой страничке Tab-а до перехода к другим, могу посоветовать блокировать переключение страничек до момента "Х". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 13:08 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
Как обычно - в PFC подобная проблема уже решена. n_cst_dwsrv_reqcolumn. Читаем описание. Смотрим код. Думаем. З.Ы. Дикие люди. Столько эмоций по такому пустяковому поводу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 14:32 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
авторЗ.Ы. Дикие люди. Столько эмоций по такому пустяковому поводу. Во-во и я такой же. Дыкий Если пользователь попал в поле, требующее обязательного заполнения и не хочет его заполнять, ( не факт, что он вообще , из принципа, не хочет этого делать. Возможно лишь только в данных момент не хочет этого делать), то как мне кажется это его законное право. А Ваше право требовать в свою очередь заполнения всей необходимой информации перед записью в БД. Я иногда делаю так: - При разработке (design) datawindow object в мастерской (painter) я на все поля требующие обязательного ввода ставлю признак required. - В uo_dw, который у меня наследуется от стандартного DataWindow Object определяю Instance var - массив наименований полей имеющийх признак Required. - В конструкторе прохожу в цикле по всем поля dataWinow, ищую выставленный признак required, Снимаю его, а название поля заносится в массив. - В момент сохранения данных (можно посмотреть событие UpdateStart() ), восстанавливаю для всех колонок признак required и проверяю заполнение этих полей с помощью findRequired(...) . Дальнейшая обработке по вкусу. Можно и по другому решить эту проблему. 1. Определяете в своем окне, и(ли) пользовательском объекте instance var dragObject i_objHasFocus - объект имеющий фокус в данный момент. 2. В событии getFocus элементов интерфейса проверяете, значение этой переменной и выполняете необходимые проверки. (Для TypeOf(i_objHasFocus) = datawindow! Как минимум выполняете accepttext() , проверяете результат, и пролучив -1, возвращает фокус обратно i_objHasFocus.setFocus() ) 3. Если проверки прошли успешно, то значит можно оставлять фокус в данном элементе интерфейса (i_objHasFocus = this), если нет, то возвращаете фокус обратно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 06:50 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
то что у Вас есть работающее решение это конечно хорошо, но.... Ничего не надо снимать и устанавливать. Достаточно выявить ситуацию в itemerror и сделать return 3 (Reject the data value but allow focus to change). Как определить что itemerror именно по причине незаполненного required column см. Describe(...) в pfc_n_cst_dwsrv_reqcolumn.of_settonullifempty(...) В PFC также перед сохранением выполняется FindRequired, но при этом нет шаманских плясок с массивами и установкой/снятием свойства Required. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 10:14 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
2 ЗоринАндрей Вот и договорились. Больше ничего не буду снимать и устанавливать . Действительно, простенько и со вкусом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 10:57 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
Кста, есть одно но. PFC-шный код плохо работает с Required EditMask. Там идет проверка на Empty String is Null, а такого свойства у EditMask нету. Типа предупредил... З.Ы. Как-то мы эту проблему решали, но к сожалению соответствующего кода под рукой нету. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 11:57 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
А на само-то деле, как мне кажется, здесь проблема с логикой организации клиентского софта... Если одно место логически зависит от другого, то эти места не могут располагаться в одном окне в один момент времени. И разносить их надо не в пространстве - по разным вкладкам, а по времени - сначала одно окно, потом другое (или тоже, но с другой смысловой нагрузкой). Пример: во время работы программы установки (непосредственного копирования данных на диск) пытаться указать папку для установки... А так какая-то хрень получается, нарушение жизненного цикла пользователя. И не поверю, что есть такие ситуации, когда нужно все засунуть в одно окно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2004, 16:33 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
Чушь собачья. Пользователям нравится когда все под рукой. Гораздо удобнее чем путатся "сначала в одном окне, потом в другом". В Powerdesigner например - 17 tabpages в окне свойств таблицы - и я сразу вижу что где - нафик надо еще запоминать где что в каком окне. Или например Enterprise Manager - одно окно главное, плюс открывается окно свойств, в котором количество закладок зависит от сложности объекта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2004, 18:18 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
ЗоринАндрей...плюс открывается окно свойств, в котором количество закладок зависит от сложности объекта. Я о том и говорю, что нужно раздалят зависимые параметры от независимых. Ни в Enterprise Manager, ни еще где-нибудь работа в одной вкладке не зависит от вводимых данных в другой. Все зависимые параметры собраны в одной. Если пользователю предоставляются вкладки с открытым доступом, то он имеет право свободно перемещаться по ним, и привязывать к поле - это глупость. Такие моменты надо обходить с другой стороны, например, как писалось выше. Либо ввел, либо иди дальше, но только не туда, куда нельзя. Не имею ничего против вкладок, если много параметров и они привязаны к одному объекту, то их можно разнести на вкладки, но между ними не будет зависимой связи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2004, 17:05 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
Эх, приятно почитать разговоры "мысли" "умных" людей...Жаль что толку в них NULL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2004, 12:02 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
hurrЭх, приятно почитать разговоры "мысли" "умных" людей...Жаль что толку в них NULL. По моему Guest_2 не поленился достаточно подробно все объяснить. С моей поправкой решение получается достаточно простое, чтобы его мог реализовать не слишком тупой программер. особенно имея перед собой код PFC в качестве примера. Что-то все еще непонятно? или этот выпад относится не к треду, а к трем предыдущим постам? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2004, 14:51 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
ЗоринАндрей[quot hurr]...или этот выпад относится не к треду, а к трем предыдущим постам? Угу - к ним имено.Это НЕ относится к тем людям кто дали ДЕЛЬНЫЕ и ПОЛЕЗНЫЕ советы держась в теме данного треда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2004, 18:43 |
|
||
|
НЕ Перемещение фокуса
|
|||
|---|---|---|---|
|
#18+
hurrЭто НЕ относится к тем людям кто дали ДЕЛЬНЫЕ и ПОЛЕЗНЫЕ советы держась в теме данного треда. А разве совет о том, что надо создавать логичный интерфейс не относится к дельным и полезным советам? Или Вы предпочитаете не забивать себе голову тем, как пользователи будут потом ломать себе голову при пользовании таким софтом? Конечно, что может быть проще - засунул все в одно окно и нет проблем... Интерфейс должен быть дружественным . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2004, 19:36 |
|
||
|
|

start [/forum/topic.php?fid=15&msg=32792869&tid=1338702]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 305ms |
| total: | 465ms |

| 0 / 0 |
