Promotic
WikipediaLinkedInYoutubeTwitterFacebook

WndOper - metoda objektu Pm

Popis:
Provedení operace nad otevřeným oknem této nebo jiné aplikace.
Syntaxe:
Boolean WndOper(Long nMode, String sWnd, Long nOper, [Variant vPar0], [Variant vPar1], [Variant vPar2])
Parametry:
nMode(Long) Způsob nalezení otevřeného okna:
0 - Hodnota parametru sWnd odpovídá identifikátoru rámu blankid (viz _blank:blankid) této aplikace.
1 - Hodnota parametru sWnd odpovídá celému textu záhlaví hledaného okna jiné aplikace.
2 - Hodnota parametru sWnd odpovídá začátku textu záhlaví hledaného okna jiné aplikace.
3 - Hodnota parametru sWnd je obsažena uvnitř textu záhlaví hledaného okna jiné aplikace.
sWnd(String) Text, který popisuje otevřené okno této nebo jiné aplikace.
nOper(Long) Požadovaná operace nad otevřeným oknem:
0 - Test, zda je okno otevřeno. Nezadávat parametry vPar0, vPar1 a vPar2.
1 - Zaslání Windows zprávy oknu (viz dokumentace Win32 API rozhraní OS Windows)
vPar0 (Long) - kód Windows zprávy
vPar1 (Long) - první parametr WPARAM Windows zprávy
vPar2 (Long) - druhý parametr LPARAM Windows zprávy
10 - Uzavření otevřeného okna (pokud je to hlavní okno, pak uzavření celé aplikace). Nezadávat parametry vPar0, vPar1 a vPar2.
11 - Vytažení otevřeného okna na popředí. Nezadávat parametry vPar0, vPar1 a vPar2.
12 - Minimalizace otevřeného okna. Nezadávat parametry vPar0, vPar1 a vPar2.
13 - Maximalizace otevřeného okna. Nezadávat parametry vPar0, vPar1 a vPar2.
14 - Obnovit z maximalizace otevřeného okna. Nezadávat parametry vPar0, vPar1 a vPar2.
20 - Vrací pozici a velikost okna (v pixelech) v podobě PmMap. PmMap obsahuje vlastnosti x, y, dx a dy určující pozici a velikost. Nezadávat parametry vPar0, vPar1 a vPar2.
21 - Nastaví pozici a/nebo velikost okna (v pixelech) v podobě PmMap v parametru vPar0. PmMap obsahuje vlastnosti x, y, dx a dy určující pozici a velikost. Nezadávat parametry vPar1 a vPar2.
vPar0[nepovinné] (Variant) Význam závisí na operaci (na parametru nOper).
vPar1[nepovinné] (Variant) Význam závisí na operaci (na parametru nOper).
vPar2[nepovinné] (Variant) Význam závisí na operaci (na parametru nOper).
Vrácená hodnota:
true - Hledané okno bylo nalezeno a operace byla úspěšně provedena.
false - Hledané okno nenalezeno nebo selhala požadovaná operace.
Poznámka:
Metoda umožňuje provést operaci nad zadaným samostatným oknem (pokud je otevřeno).
Pokud se jedná o okno této aplikace, pak se okno určuje pomocí identifikátoru rámu blankid (viz _blank:blankid).
Pokud se jedná o okno jiné aplikace, pak se okno určuje pomocí textu v záhlaví okna.

Bylo zjištěno omezení zasílaní Windows zpráv (Pm.WndOper) z 32 bitového programu oknu 64 bitového programu, kdy 32 bitový program musel být spuštěn s povýšenými právy (Spustit jako správce).

Tato metoda není funkční ve Web obrazech.
Viz také:
- PmViewCreator.Frame (vlastnost)
Příklad1:
Test existence okna kalkulačky (jiná aplikace):
JavaScriptVBScriptVyber a zkopíruj do schránky

if (Pm.WndOper(1, "Calculator", 0))
// ...
nebo
JavaScriptVBScriptVyber a zkopíruj do schránky

if (Pm.WndOper(3, "alculato", 0))
// ...
Příklad2:
Uzavření prohlížeče alarmů v samostatném okně s identifikátorem _blank:alarms (tato aplikace):
JavaScriptVBScriptVyber a zkopíruj do schránky

Pm.WndOper(0, "_blank.alarms", 10);
Příklad3:
Přesunutí okna s prohlížečem alarmů s identifikátorem _blank:alarms na zadanou pozici na druhém monitoru s následnou maximalizací:
JavaScriptVBScriptVyber a zkopíruj do schránky

var oRect = Pm.CreatePmMap();
oRect.x = 1920;
oRect.y = 0;
oRect.dx = 1000;
oRect.dy = 800;
Pm.WndOper(0, "_blank.alarms", 21, oRect);
Pm.WndOper(0, "_blank.alarms", 13);
Příklad4:
Zjištění pozice a velikosti okna s prohlížečem alarmů s identifikátorem _blank:alarms. Uložení hodnot do ini souboru:
JavaScriptVBScriptVyber a zkopíruj do schránky

var oRect = Pm.WndOper(0, "_blank.alarms", 20);
var bWrite = Pm.IniFileWrite("#cfg:Config.ini", "Position", "alarms", Pm.JsonStringify(oRect));
Vyčtení pozice z ini souboru. Nastavení pozice a velikosti okna s prohlížečem alarmů s identifikátorem _blank:alarms:
JavaScriptVyber a zkopíruj do schránky

var sRect = Pm.IniFileRead("#cfg:Config.ini", "Position", "alarms", '{"x":0;"y":0;"dx":900;"dy":500;}');
Pm.WndOper(0, "_blank.alarms", 21, Pm.JsonParse(sRect).Value);

Historie:
Pm9.00.14: Vytvořeno
Navigace:
 
- Pm
 
- Abs
- Cos
- E
- Exp
- LN2
- PI
- Pow
- Sin
- Tan
- WndOper
 
 
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice