Вверх ↑
Этот топик читают: Гость
Ответов: 9906
Рейтинг: 351
#1: 2014-07-16 00:56:01 ЛС | профиль | цитата
Нажимаем Enter в обоих Edit-ах, и наблюдаем

Add(MainForm,2953706,231,119)
{
}
Add(Edit,3078947,161,105)
{
Left=13
Top=105
Width=365
Point(onKeyDown)
link(onEnter,3078947:doText,[(200,118)(200,97)(151,97)(151,111)])
link(onKeyDown,4616424:doWork2,[])
}
Add(Edit,9802107,161,147)
{
Left=13
Top=133
Width=365
Point(onKeyDown)
link(onKeyDown,4616424:doWork3,[(207,167)])
}
Add(HubEx,4616424,203,119)
{
link(onEvent,2953706:doCaption,[])
}

Спрашивается - зачем нам подмигивание окна при не подключенном onEnter.
Зачем эту хрень придумали мягкотелые - даже предполагать не берусь
Но нам то это -- зачем

Предложение:
#pas
procedure THIEdit._OnKeyDown;
var dt:TData;
begin
if Key = 13 then begin
if Assigned(_event_onEnter.Event) then begin
if _prop_DataType(dt) then begin
_hi_onEvent(_event_onEnter,dt);
if _prop_ClearAfterEnter then begin
ChangeEvent := false; // Установка Control.Text вызывает _OnChange !!!
Control.Text := ';
end;
end;
end else inherited; // _event_onKeyDown
Key := 0;
end else inherited; // _event_onKeyDown
end;
карма: 9

0
vip
#1.1контекстная реклама от партнеров
Ответов: 16884
Рейтинг: 1239
#2: 2014-07-16 10:36:51 ЛС | профиль | цитата
Galkov писал(а):
Нажимаем Enter в обоих Edit-ах, и наблюдаем
........
зачем нам подмигивание окна при не подключенном onEnter
Windows 7. Никаких подмигиваний окна не наблюдаю.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 8888
Рейтинг: 823
#3: 2014-07-16 11:06:43 ЛС | профиль | цитата
Tad писал(а):
..Никаких подмигиваний окна не наблюдаю..
XP -- аналогично
карма: 19

0
Разработчик
Ответов: 26068
Рейтинг: 2121
#4: 2014-07-16 11:10:45 ЛС | профиль | цитата
Tad писал(а):
Windows 7. Никаких подмигиваний окна не наблюдаю.

У меня тоже не моргает. Или тут что-то другое, выданное за моргание
карма: 22

0
Ответов: 4622
Рейтинг: 746
#5: 2014-07-16 11:43:39 ЛС | профиль | цитата
Никаких миганий тоже не увидел (Win2000), разве что при нажатии на втором поле звучит "Стандартный звук", заданный в Панели управления. Может, этот звук и есть аналогом "мигания"?

Меня вот интересует поведение первого Edit'a в данном включении (с ClearAfterEnter=True). Глядя на схему и описания точек я понимаю, что при получении события onEnter (после него поле должно очистится согласно ClearAfterEnter) я беру текущий текст из потока и подаю его на doText. По моему понятию, после события поле должно опять содержать тот же текст (раз уж я вызвал doText). А оно очищается. Это правильно? (причина - в вызове onEnter перед очищением поля)
------------ Дoбавленo в 11.43:
Ага, а я нашел! Зайдите в "Специальные возможности", там есть пункт "Визуальное оповещение" звуковых событий. Будет вам мигание.
карма: 26

0
Ответов: 16884
Рейтинг: 1239
#6: 2014-07-16 12:42:32 ЛС | профиль | цитата
Netspirit писал(а):
Зайдите в "Специальные возможности", там есть пункт "Визуальное оповещение" звуковых событий. Будет вам мигание.

Напоминает старый анекдот про мужика, который вызвал милицию и потребовал его переселить, потому что он живет напротив женской бани, и в окно постоянно видны голые бабы. Милиционеры пришли, посмотрели в окно и говорят:
- Ничего не видно.
А мужик им говорит:
- Да? А вы на шкаф залезьте и оттуда посмотрите.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 4622
Рейтинг: 746
#7: 2014-07-16 12:48:26 ЛС | профиль | цитата
Точно
карма: 26

0
Ответов: 9906
Рейтинг: 351
#8: 2014-07-16 14:12:43 ЛС | профиль | цитата
Netspirit писал(а):
А оно очищается. Это правильно? (причина - в вызове onEnter перед очищением поля)

Раньше (до введения свойства ClearAfterEnter) было наоборот.
Ну и ладно... Пример внедрения "интеллекта", с последующей борьбой с ним.
Мне, лично, проще самому очистить поле (вообще-то, я не чищу, а делаю SelectAll), чем полагаться на чью-то "услугу".
Тут реально возникают вопросы обратной совместимости.
И черт с ними, ИМХО.

Netspirit писал(а):
Зайдите в "Специальные возможности", там есть пункт "Визуальное оповещение" звуковых событий. Будет вам мигание

Во Спасибо.

Но вопрос-то остался.
А нафига нам звуковое сопровождение
А откуда нам известно, что у пользователя "Специальные возможности" настроены так же, как и Автора программы

Короче - нафига нам этот цирк. И что скажите про его устранение
------------ Дoбавленo в 14.12:
Грубо говоря, нафига нам видеть голых баб, даже со шкафа. Если убрать никому не нужную баню - быстрее, чем обсуждение этого вопроса.
карма: 9

0
Ответов: 824
Рейтинг: 138
#9: 2014-07-16 14:12:54 ЛС | профиль | цитата
Galkov писал(а):
нафига нам этот цирк. И что скажите про его устранение
ЗА!
карма: 1

0
Разработчик
Ответов: 26068
Рейтинг: 2121
#10: 2014-07-16 14:15:35 ЛС | профиль | цитата
Galkov писал(а):
А откуда нам известно, что у пользователя "Специальные возможности" настроены так же, как и Автора программы

Об этом, кстати, я тоже подумал. Думаю, что такое изменение вполне имеет право на существование. Оно ни на что не влияет, ну, окромя вывода на экран и звука
карма: 22

0
Ответов: 4622
Рейтинг: 746
#11: 2014-07-16 14:17:52 ЛС | профиль | цитата
По-поводу как звукового, так и визуального оповещения - мне кажется, в случае с Edit оно информирует пользователя о недопустимом символе при вводе (в данном случае 13). Тот же эффект при наборе служебных символов через Alt (коды до 29 (за некоторыми исключениями), например, Alt+012). Стоит ли его оставлять для Enter - а х.з.
карма: 26

0
Ответов: 9906
Рейтинг: 351
#12: 2014-07-16 14:36:13 ЛС | профиль | цитата
Netspirit писал(а):
Стоит ли его оставлять для Enter - а х.з.

В принципе - ДА.
Однако, мне представляется, что: либо - никогда не трогать (у пользователя уже есть doKeyBack, на этот случай), либо - всегда убивать.
А вот когда это решение зависит еще и от других факторов (от "подключенности" чего-то) -- не правильно.
Мое предложение было: раз уж начали "убивать", так уж давайте -- всегда (для Key=13, естественно).

Netspirit писал(а):
Тот же эффект при наборе служебных символов через Alt

Угу.
И не только Alt. В топике KeyPreview - я пример давал (кажется Ctrl+A).
Я же не знал, что у вас "окна не мигают"
карма: 9

0
Ответов: 16884
Рейтинг: 1239
#13: 2014-07-16 14:51:49 ЛС | профиль | цитата
Galkov писал(а):
А откуда нам известно, что у пользователя "Специальные возможности" настроены так же, как и Автора программы
Если очень хочется полного соответствия работы программы у пользователя авторскому варианту, то добавить метод включения и отключения звука.


карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 9906
Рейтинг: 351
#14: 2014-07-21 11:23:14 ЛС | профиль | цитата
Ну что, все подумали. Высказались.

Так на чем сердце успокоится ??? КУ, или не КУ


карма: 9

0
Ответов: 4622
Рейтинг: 746
#15: 2014-07-21 13:13:24 ЛС | профиль | цитата
Я не против.
карма: 26

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)