Promotic
WikipediaLinkedInYoutubeTwitterFacebook

onMouseArea - událost objektu TrendsView

Popis:
Událost je vyvolána při stisku, uvolnění, nebo dvojklikem levým tlačítkem myši nad plochou, ve které jsou vykreslovány grafy (ohraničena stupnicemi). Zda událost byla vyvolána stiskem, uvolněním nebo dvojklikem myši lze zjistit z parametru Action.
Parametry:
pMe(Object) Reference na objekt PmiAx vlastnící tento ActiveX. Referenci na samotný ActiveX objekt lze získat pomocí výrazu pMe.Acx.
Action(Long) druh akce nad levým tlačítkem myši
0 - uvolnění levého tlačítka myši
1 - stisknutí levého tlačítka myši
2 - dvojklik levého tlačítka myši
Ctrl(Boolean) indikace současného stisknutí klávesy Ctrl
Shift(Boolean) indikace současného stisknutí klávesy Shift
Alt(Boolean) indikace současného stisknutí klávesy Alt
X(Long) Pozice kursoru myši (v pixelech) v ose X relativně vůči levému hornímu rohu oblasti pro vykreslování průběhů (ohraničena stupnicemi)
Y(Long) Pozice kursoru myši (v pixelech) v ose Y relativně vůči levému hornímu rohu oblasti pro vykreslování průběhů (ohraničena stupnicemi)
TimePos(Variant) Hodnota času odpovídající pozici kursoru, kde bylo kliknuto myši.
ValuePos(Variant) Hodnota průběhu aktivního trendu (určený vlastností TrendsView.TrendActive) odpovídající pozici kursoru, kde bylo kliknuto myši.

Pokud v prohlížeči není zobrazován žádný průběh (hodnota vlastnosti TrendsView.TrendsCount je 0), pak parametr je nastaven na hodnotu Empty.

Poznámka:

Upozornění 1: Vždy je nutno otestovat parametr Action (viz Příklad1). Pokud by nebyla testována, pak skript v události onMouseArea bude volán dvakrát, neboť když uživatel zmáčkne a uvolní tlačítko myši, pak událost onMouseArea přijde dvakrát, ovšem vždy s jiným parametrem Action.

Upozornění 2: Do skriptu v případě, kdy je ošetřována akce Action=1, NENÍ vhodné umísťovat metody vyvolávající jiné okno na plochu (např. Pm.InputBox, atd.). Pokud takováto metoda je použita, může to mít za důsledek následné NEvyvolání akce Action=0. Skripty vyvolávající další okna je nutno umístit do větve náležející uvolnění tlačítka myši (tzn. když Action=0).

Viz také:
Příklad1:
If Action = 0 Then
  If Ctrl Then
    ' smaž bod nejbližší pozici kurzoru myši, když se uvolňuje tlačítko myši
    oTrend.Points.RemovePoints "range:all;time:near;", TimePos
  Else
    ' přidej bod na pozici kurzoru myši, když se uvolňuje tlačítko myši
    oTrend.Points.AddPoints TimePos, ValuePos, 0, 5
  End If
End If
Příklad2:
Kliknutím myši do plochy v blizkosti průběhu trendu je tento trend zaktivován, tj. nastavena vlastnost TrendActive na trend, na jehož průběh bylo kliknuto.
Dim nTrend
If Action = 0 Then
  nTrend = oTView.FindTrend(10, X, Y)
  If nTrend>= 0 Then
    oTView.TrendActive = nTrend
  End If
End If
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice