Akcia OPEN


Funkcia
Otvorenie objektu typu Graf, Schéma alebo Zostava.
Deklarácia
OPEN grObjIdent [OM_NORMAL | OM_DLG | OM_MODAL] [INSTANCE  instanceExprInt]

 
alebo
 
OPEN grObjIdent ON procIdent [OM_NORMAL | OM_DLG | OM_MODAL] [INSTANCE  instanceExprInt]

 
alebo
 
OPEN grObjIdent  DIRECT [USE_MDD] [OM_NORMAL | OM_DLG | OM_MODAL | OM_POPUP _xIdent, _yIdent] [INSTANCE  instanceExprInt] [[SYNC [END]]

 
alebo
 
OPEN grObjIdent  ON ALL [OM_NORMAL | OM_DLG | OM_MODAL] [INSTANCE instanceExprInt]

 
 
OPEN "meno schemy", knlId  DIRECT  [OM_NORMAL | OM_DLG | OM_MODAL | OM_POPUP  | OM_INFO  _xIdent, _yIdent] [INSTANCE instanceExprInt] [[SYNC [END]]

Parametre
grObjIdent in Odkaz na objekt typu Graf, Schéma alebo Zostava.
procIdent in Identifikátor objektu typu Proces (D2000 HI).
instanceExprInt in Výraz typu Int - číslo inštancie objektu.
_xIdent in Parameter typu Int - x-ová pozícia otváraného objektu na ploche procesu D2000 HI.
_yIdent in Parameter typu Int - y-ová pozícia otváraného objektu na ploche procesu D2000 HI.
knlId in Číslo procesu D2000 Server v multiserver systéme.

Popis
Akcia otvorí grafický objekt (voliteľne aj danú inštanciu) v danom procese D2000 HI (ak nie je definovaný, tak v SELF.HIP) alebo na všetkých aktuálne bežiacich procesoch D2000 HI.
Akcia s klauzulou DIRECT je povolená len v prípade aktívnej schémy. Takto otvorená schéma (na identickom procese D2000 HI) bude otvorená ako podschéma - prebehne kopírovanie lokálnych premenných schémy typu INOUT medzi schémami.
V prípade použitia kľúčového slova SYNC, bude akcia ukončená až po skutočnom otvorení schémy. Ak za kľúčovým slovom SYNC nasleduje END, akcia bude ukončená až po zatvorení schémy.

Parameter USE_MDD umožní procesu D2000 HI otvoriť schému, bez väzby na polohu schémy, z ktorej je otváraná. Napríklad ak je HI v režime multidisplay (používa viacero monitorov) a schéma, ktorá použila volanie OPEN ... DIRECT (bez parametra USE_MDD) je na monitore č. 2, bude otváraná schéma umiestnená na monitor č. 2. Ak je použitý parameter USE_MDD, otváranie sa bude diať podľa konfigurácie v súbore mdd.ini a podľa parametrov na schéme.

Prostredníctvom kľúčového slova OM_*, akcia umožňuje nastaviť typ okna schémy po otvorení predefinovaním jej štandardného nastavenia:

Typ okna Kľúčové slovo
normálne OM_NORMAL
dialógové OM_DLG
dialógové modálne OM_MODAL
popup schéma OM_POPUP
info schéma OM_INFO

Kľúčové slovo OM_POPUP je možné použiť len spolu s kľúčovým slovom DIRECT. Otvorenie schémy ako popup vyžaduje zadanie ďalších parametrov _xIdent a _yIdent, ktoré špecifikujú polohu okna pri otvorení. Táto poloha je daná v súradniciach vzhľadom na schému, z ktorej je otváraná. Hodnoty sú k dispozícii napríklad v obsluhe udalosti OnMouseDown. Ak sú parametre _xIdent a _yIdent nastavené na hodnoty -1 a -1, potom sa okno otvorí na pozícií kurzora myši.
Tento popis platí aj pre kľúčové slovo OM_INFO.

Otvorenie schémy ako popup okno - schéma sa otvára ako dialógová aktívna schéma bez titulku (berie fókus aktívnej schémy procesu). Po kliknutí mimo schému sa schéma zatvorí.

Otvorenie schémy ako info okno - schéma sa otvára ako dialógová neaktívna schéma bez titulku s úzkym rámikom. Schéma nie je aktívna (neberie fókus aktívnej schémy procesu), ak obsahuje iba grafické objekty a windows prvky, iné vnorené objekty môžu aktivovať takúto schému.
Pretože schéma nemá titulkový pruh, vhodné je, aby mala implementovaný vlastný zatvárací mechanizmus.

Upozornenie: Akcia OPEN môže byť neúspešná, ak už je schéma v HI otvorená, alebo ak je jej otvorenie blokované otvorením v inom HI (aplikačne modálne schémy).


Poznámka
* Použitie len v rámci aktívnej schémy. Akcia otvorí na ploche procesu D2000 HI schému danú jej menom (parameter meno schémy). Schéma sa nachádza v konfigurácií procesu D2000 Server definovaného pomocou parametra knlID.

Súvisiace stránky:

1 komentár

  1. Anonymný

    Hodili by sa sem príklady napr. pre otvorenie okna na pozícií kurzora myši.

Nie ste prihlásený. Akékoľvek zmeny, ktoré vykonáte, sa označia ako anonymné. Ak už máte svoj účet, pravdepodobne sa budete chcieť prihlásiť .