Promotic
WikipediaLinkedInYoutubeTwitterFacebook

onViewerResize - událost objektu PmiRoot

Popis:
Událost je vyvolána při změně velikosti okna obrazu. Událost lze použít ke změně pozice a velikosti grafických prvů v závislosti na aktuální velikosti okna obrazu.
Parametry:
pMe(Object) Reference na grafický prvek, ve kterém daná událost vzniká.
pEvent(Object) Reference na objekt popisující podrobněji informace o dané události.
pEvent.Dx - (Long)Nová velikost okna obrazu v ose X (v pixelech).
pEvent.Dy - (Long)Nová velikost okna obrazu v ose Y (v pixelech).
Poznámka:
V této události lze přizpůsobit velikost celého obrazu i jednotlivých grafických prvků aktuální velikosti okna obrazu. Velikost celého obsahu obrazu je vlastně velikost grafického prvku PmiRoot. Změnu velikosti obrazu lze provést změnou hodnot Dx a Dy grafického prvku PmiRoot.
 
Tato událost je funkční i pro Web obrazy.
Příklad1:
Příklad obsahu události. Velikost obrazu je přizpůsobena aktuální velikosti okna obrazu. Tímto se nemění pozice a velikosti jednotlivých grafických prvků, pouze velikost obrazu (bez scrollbarů). Pro změnu pozice a velikosti některých grafických prvků by bylo nutno měnit i tyto prvky.
JavaScriptVBScriptVyber a zkopíruj do schránky

pMe.Dx = pEvent.Dx;
pMe.Dy = pEvent.Dy;
Příklad2:
Příklad obsahu události. Velikost obrazu a pozice některých grafických prvků je přizpůsobena aktuální velikosti okna obrazu. Obraz má svojí minimální velikost, definovanou při vytvoření v editoru obrazu. Pokud bude okno obrazu menší, pak se objeví scrollbary. Pokud ale bude okno obrazu větší, pak změní se velikost a pozice některých grafických prvků následujícím způsobem:
- hlavní cetrální prvek (např. tabulka) (t0) - se zvětší/zmenší v příslušném směru
- prvky vpravo od tabulky (např. tlačítka) (br0, br1) - se posunou ve vodorovném směru
- prvky pod tabulkou (např. tlačítka) (bd0, bd1) - se posunou ve svislém směru
JavaScriptVBScriptVyber a zkopíruj do schránky

var dx, dy, item;

pMe.Dx = pEvent.Dx > pMe.IniDx ? pEvent.Dx : pMe.IniDx;
pMe.Dy = pEvent.Dy > pMe.IniDy ? pEvent.Dy : pMe.IniDy;

dx = pMe.Dx - pMe.IniDx;
dy = pMe.Dy - pMe.IniDy;

item = pMe.Items("/tb0");
item.Dx = item.IniDx + dx;
item.Dy = item.IniDy + dy;

item = pMe.Items("/br0");
item.X = item.IniX + dx;

item = pMe.Items("/br1");
item.X = item.IniX + dx;

item = pMe.Items("/bd0");
item.Y = item.IniY + dy;

item = pMe.Items("/bd1");
item.Y = item.IniY + dy;
pMe.Refresh();
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice