Promotic
WikipediaLinkedInYoutubeTwitterFacebook

Objekt PmForm (Formulář)

Popis:
Objekt představuje formulář pro zadávání hodnot.
Vlastnosti a metody:
CreateItem Vytvoří jednu položku formuláře
GetItem Vrací existující položku formuláře
Title Zobrazovaný název formuláře v záhlaví okna
BgColor Barva pozadí okna formuláře
SysButtons Volba systémových tlačítek
Close Zavře prohlížeč formuláře
Seznam podobjektů:
PmfString Zadavatel textu
PmfInt Zadavatel celého čísla (Integer)
PmfFloat Zadavatel reálného čísla (Float)
PmfBool Zadavatel boolean hodnoty (Checkbox)
PmfEnum Výběr jeden z několika (Combobox)
PmfButton Tlačítko
PmfSepar Separátor (oddělovač) mezi konfigurátory
PmfObject Formální objekt - rodič všech položek formuláře
Poznámka:
- Objekt lze vytvořit pomocí metody Pm.CreatePmForm.
- Tento objekt je funkční i pro Web obrazy. Nefunguje však v prohlížeči InternetExplorer8 a nižší.
- Objekt lze použít v jazyce VBScript a JavaScript.
 
Objektem PmForm lze dynamicky (tzn. pomocí skriptu) vytvořit okno pro zadávání údajů (formulář). Každý "zadávaný údaj" zde představuje jednu položku formuláře.

Formulář lze vytvořit také objektem PmPanel ale objektem PmForm lze toto provést dynamicky a jednodušeji, protože položky formuláře se automaticky pozicují a roztahují tak jak je potřeba.

 
Postup vytvoření formuláře:
Vytvoří modální okno pro zadávání údajů
-----------
1. V jednom skriptu (např. při stisku tlačítka v události onButtonUp) se vytvoří, nastaví a otevře formulář:
JavaScriptVyber a zkopíruj do schránky

//Vytvoří objekt formuláře
var oItem;
var oForm = Pm.CreatePmForm();
oForm.Title = "Vstupní pole parametrů uskladnění balíků";

//Vytvoří položky formuláře:
oItem = oForm.CreateItem("int", "i1", "Počet balíků", "Min:0;Max:33;");
oItem.Value = 5;
oItem = oForm.CreateItem("bool", "b1", "Uskladnit");
oItem.Value = true;
oItem = oForm.CreateItem("string", "s1", "Popisek");
oItem.Value = "Balená voda";
oItem = oForm.CreateItem("enum", "e1", "Rychlost zpracování");
oItem.AddRow(0.5, "pomalu");
oItem.AddRow(9.9, "rychle");
oItem.Value = 0.5;
oItem = oForm.CreateItem("button", "reset", "Vynulovat");

//Otevře formulář v modálním okně:
var oExtra = Pm.CreatePmMap();
oExtra.ViewObject = oForm;
oExtra.onChange = Pm.CreatePmAction(1, pMe, "FormChanged");
oExtra.onClose = Pm.CreatePmAction(1, pMe, "FormClosed");
pMe.PmPanel.OpenView("/#glob/form", "target:_blank;modal:1;", "", oExtra);
2. Při zadávání hodnot do formuláře se při jakékoli změně vyvolá metoda projektanta "FormChanged" (viz oExtra.onChange). Zde lze například zjistit, že došlo ke stisknutí tlačítka "Vynulovat" a provede se vynulování všech položek.

Tato metoda projektanta se vytváří v záložce Metody a musí mít dva parametry: oSystem a oPrivate.

JavaScriptVyber a zkopíruj do schránky

if (oSystem.ChangeType == "push" && oSystem.ItemId == "reset")
{
  var oForm = oSystem.ViewObject;
  oForm.GetItem("i1").Value = 0;
  oForm.GetItem("b1").Value = false;
  oForm.GetItem("s1").Value = "";
  oForm.GetItem("e1").Value = 0.5;
}
3. Po zadání údajů a zavření okna se vyvolá metoda projektanta "FormClosed", ve které lze zjistit všechny nastavené hodnoty.

Tato metoda projektanta se vytváří v záložce Metody a musí mít dva parametry: oSystem a oPrivate.

JavaScriptVyber a zkopíruj do schránky

if (oSystem.CloseReason == "ok")
{
  var oForm = oSystem.ViewObject;
  var val1 = oForm.GetItem("i1").Value;
  var val2 = oForm.GetItem("b1").Value;
  var val3 = oForm.GetItem("s1").Value;
  var val4 = oForm.GetItem("e1").Value;
}
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice