Вверх ↑
Ответов: 9906
Рейтинг: 351
#1: 2016-01-06 23:57:08 ЛС | профиль | цитата
2nesco,
Если бы было так:
procedure THIWin._onMouseWheel;
begin
Ms := Mouse;
_hi_OnEvent(_event_onMouseWheel, smallint(Ms.Shift shr 16));
end;
то наездов на бедный MathParse -- не было бы
------------ Дoбавленo в 21.59:
это было предложение


------------ Дoбавленo в 23.21:
ser_davkin писал(а):
Мне думалось, что там только два железных значения, либо 120, либо -120

Вообще-то, если шибко быстро крутить колесо, то можно получить и 240, и 360... С обоими знаками.

Случай -119 не рассматриваем, ввиду его устраняемости. Это типа наша ошибка (возможно - и моя).
Метод andrestudio, поэтому, более правильный. Если его модифицировать, конечно же:

Add(MainForm,13280668,217,147)
{
Width=402
Height=194
Point(onMouseWheel)
link(onMouseWheel,3291139:doCalc,[])
}
Add(MathParse,3291139,287,168)
{
MathStr="round((%1/120)*(0.1+0.9*%2[17])+%0,0.1)"
link(onResult,16538876:doText,[])
link(X2,541404:Keys,[])
}
Add(Label,16538876,350,168)
{
Left=145
Top=45
}
Add(Keyboard,541404,294,98)
{
}
карма: 9

0
Редактировалось 1 раз(а), последний 2016-10-22 22:59:39