Promotic
WikipediaLinkedInYoutubeTwitterFacebook

onMouseArea - zdarzenie obiektu PmgTrendViewer

Opis:
Zdarzenie jest wywołane po naciśnięciu, zwolnieniu, lub dwukrotnym kliknięciu lewym przyciskiem myszy nad obszarem, w którym są wykreślane wykresy (ograniczony przez podziałki).

Czy zdarzenie zostanie wywołane przez naciśnięcie, zwolnienie lub poprzez dwukrotne kliknięcie myszki można uzyskać w parametrze pEvent.Action.

Parametry:
pMe(Object) Odniesienie do PmgTrendViewer obiektu, w którym dane zdarzenie powstaje.
pEvent(Object) Odniesienie do obiektu zawierającego ściślejsze informacje o danym zdarzeniu.
pEvent.Action - (Long) rodzaj akcji nad lewym przyciskiem myszy
0: zwolnienie przycisku
1: naciśnięcie przycisku
2: dwukrotne naciśnięcie przycisku
pEvent.Ctrl - (Boolean) wskazanie jednoczesnego naciśnięcia klawisza Ctrl
pvent.Shift - (Boolean) wskazanie jednoczesnego naciśnięcia klawisza Shift
pEvent.Alt - (Boolean) wskazanie jednoczesnego naciśnięcia klawisza Alt
pEvent.X - (Long) Pozycja kursora myszki (w pikselach) w osi X względem do lewej górnej krawędzi obszaru do kreślania wykresów (ograniczony podziałkami)
pEvent.Y - (Long) Pozycja kursora myszki (w pikselach) w osi Y względem do lewej górnej krawędzi obszaru do kreślania wykresów (ograniczony podziałkami)
pEvent.TimePos - (Variant) Wartość czasu, odpowiadająca pozycji kursora w miejscu naciśnięcia myszki.
pEvent.ValuePos - (Variant) Wartość przebiegu aktywnego trendu (określony właściwością PmgTrendViewer.TrendActive) odpowiadający pozycji kursora w miejscu naciśnięcia myszki.

Jeżeli w przeglądarce nie jest wyświetlany żaden przebieg (wartość właściwości PmgTrendViewer.TrendsCount wynosi 0), wtedy parametr jest ustawiony na wartość: null dla JavaScript lub Empty pro VBScript.

Notatka:

Uwaga 1: Trzeba zawsze sprawdzać parametr pEvent.Action (patrz Przykład1). Jeżeli parametr ten nie byłby sprawdzany, wtedy skrypt w zdarzeniu onMouseArea zostałby wywołany dwukrotnie, ponieważ jeżeli użytkownik naciśnie i zwolni przycisk myszy, wtedy zdarzenie onMouseArea zostanie wywołane dwukrotnie, lecz zawsze z innym parametrem pEvent.Action.

Uwaga 2: W przypadku, kiedy jest sprawdzana akcja pEvent.Action=1, NIE JEST stosowne umieszczanie do skryptu metod wywołujących inne okna na obszar roboczy (np. Pm.InputBox, itd.). Jeżeli taka metoda zostanie zastosowana, wtedy może to spowodować następujące NIEwywołanie akcji pEvent.Action=0. Skrypty wywołujące kolejne okna należy umieszczać do gałęzi skryptu przynależnej zwolnieniu przycisku myszki (tzn. jeżeli pEvent.Action=0).

Patrz również:
Przykład1:
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var oTrend = pMe.Trends(1);
if (Action == 0)
{
if (Ctrl)
{
//usuń punkt najbliższy do pozycji kursora myszki przy zwolnieniu przycisku myszki
oTrend.Points.RemovePoints("range:all;time:near;", timePos);
}
else
{
//dodaj punkt na pozycji kursora myszki przy zwolnieniu przycisku myszki
oTrend.Points.AddPoints(timePos, ValuePos, 0, 5);
}
}
Przykład2:
kliknięciem myszki do obszaru przeglądarki w pobliżu przebiegu trendu dany trend jest zaktywowany, tzn. jest ustawiona właściwość TrendActive na ten trend, na którego przebieg zostało wykonane kliknięcie.
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var oTView = pMe;
var nTrend;
if (Action == 0)
{
nTrend = oTView.FindTrend(10, X, Y);
if (nTrend >= 0)
oTView.TrendActive = nTrend;
}
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice