Parametry
Pmg obiektu są stałymi tekstowymi (wytworzonymi przez projektanta), które można wytworzyć
w dowolnym Pmg obiektcie.
Parametry
Pmg obiektu są bardzo podobne do
parametrów Pma obiektu.
Jeżeli
Pmg obiekt posiada parametry oraz jeżeli
w edytorze grafiki znajduje się kursor myszki nad tym
Pmg obiektem, wtedy te parametry (włącznie z wartościami) wyświetlają siś w pasku stanu edytora grafiki.
Parametr posiada swoją nazwę oraz wartość:
Nazwa parametru: Jest to nazwa systemowa, może zawierać tylko znaki alfanumeryczne oraz nie może zawierać znaki diakrytyczne (tzn. narodowo zależne znaki), pusty łańcuch, spacje oraz pierwszy znak nie może być liczba.
Wartość parametru jest dowolny łańcuch tekstowy. Do wprowadzenia można zastosować
Makro wyrażenie (wartość jest obliczana podczas otwarcia okna).
Wytworzenie parametru:
Odczyt oraz zastosowanie parametru:
Parametr można odczytywać:
- w skrypcie
przy pomocy metody GetPar.
Oby dwa zastosowania odczytują parametr
sposobem kaskadowym, tzn. jeżeli obiekt, w którym makro/metoda jest zastosowana nie posiada takiego parametru, wtedy parametr jest wyszukiwany w jego rodzicu (w obiekcie, do którego jest zagnieżdżony) aż w końcu jest wyszukiwany w obiekcie
PmgRoot.
Parametr jest stosowany zwłaszcza do konfiguracji
powiązań danych Pmg obiektów. W tym przypadku
Pmg obiekt (prosty lub złożony) może mieć zdefiniowaną większą ilość powiązań danych tak, że przez konfiguracyjną zmianę wartości parametru zmienią się również odniesienia do wartości w powiązaniach danych. Inne zastosowanie parametru spoczywa w parametryzacji tekstów w obiektach graficznych
PmgString,
PmgButton, itd.
Zmiana wartości parametru:
-
Podczas działania aplikacji (w runtime) ogólnie nie można zmieniać wartości parametru
Pmg obiektu - służy jako stała
Wyjątkiem są parametry obiektu
PmgRoot. Parametry te można zmienić podczas otwarcia panela (w odróżnieniu od parametrów w innych
Pmg obiektach). Następnie przez cały czas otwarcia są parametry te bez możliwości zmiany. Wartości parametrów podczas otwarcia panela można wprowadzić na dwa sposoby:
- przy wywołaniu metody
OpenView w parametrze
sParams lub
Przykład: Panel można otworzyć po raz pierwszy z wartością
1, po raz drugi z wartością
2 - i w ten sposób po pierwsze wyświetlić panel dla
"Kotlownia1" oraz po drugie dla
"Kotlownia2".
-
w środowisku deweloperskim naturalnie można wartości wszystkich
Pmg obiektów zmieniać (można również dodawać lub odejmować parametry).
Główne znaczenie parametru
Pmg obiektu jest w wytworzeniu interfejsu
Pmg obiektu, kiedy przy skopiowaniu takiego
Pmg obiektu można w prosty sposób zmienić jego parametry tak, że na przykład nie wyświetla danych
"Kociol1" lecz dane
"Kociol2". Tak więc parametr
Pmg obiektu ułatwia wytwarzanie często stosowanych
Pmg obiektów użytkownika
w edytorze grafiki.
Przykład parametryzacji tekstu:
w obiekcie
PmgString wytwórz parametr o nazwie na przykład
NumerKotla, ustaw wartość na
1. W tym obiekcie wypełnij konfigurator "
Wartość":
Wynikiem jest wyświetlenie tekstu:
Temperatura w kotle 1
Przykład parametryzacji powiązania danych:
Miejmy w aplikacji dane:
"/Kociol1/Data" oraz
"/Kociol2/Data" tego samego typu
PmaData. We obu obiektach jest zdefiniowana zmienna
"Temperatura. Następnie w panelu
/PanelKotla znajdują się dwa obiekty do wyświetlenia obu temperatur. Jeżeli w przyszłości przybędzie następny obiekt, np. Kociol3, to żeby przez proste skopiowanie istniejącego obiektu powstał nowy obiekt wyświetlający temperaturę dodanego nowego obiektu.
Rozwiązanie:
- W obiekcie
PmgString (wyświetlającym wartość temperatury) wytwórz parametr o nazwie na przykład
NumerKotla, ustaw wartość na
1.
W ten sposób jest poprawnie ustawiony
Pmg obiekt. Teraz można poprzez kopiowanie tego obiektu i tylko poprzez zmianę parametru
NumerKotla na
2 w tej kopii zapewnić, że ów skopiowany
Pmg obiekt będzie wyświetlać wartość
/Kociol2/Data/#vars/Temperatura. Kiedykolwiek w przyszłości można w prosty sposób poprzez zmianę parametru tego obiektu zmienić obiekt, którego wartość powinna być wyświetlana.
Przykład wytworzenia panela z parametrem:
Miejmy w aplikacji dane:
"/Kociol1/Data" oraz
"/Kociol2/Data" tego samego typu
PmaData. We obu obiektach jest zdefiniowana zmienna
"Temperatura. Dalej istnieje panel "
/PanelKotla", który powinien wyświetlać temperaturę dla
"Kociol1" lub dla
"Kociol2" (według parametrów otwarcia okna).
Rozwiązanie:
- w panelu
/PanelKotla w obiekcie
PmgRoot wytwórz parametr o nazwie
NumerKotla.
Tym samym masz poprawnie ustawiony panel. Teraz pozostaje tylko zapewnić, żeby panel został otwarty zawsze z odpowiednim parametrem. Na przykład wytwórz inny panel, z którego będziesz otwierać panel "
/PanelKotla". Do tego nowego panelu włóż dwa przyciski (
Pmg obiekty
PmgButton). Pierwszy przycisk będzie optwierać panel dla
"Kociol1", drugi przycisk będzie otwierać ten sam panel dla
"Kociol2". Do zdarzenia
onButtonUp pierwszego przycisku wprowadź następujący skrypt:
Do tego samego zdarzenia następnego przycisku wprowadź podobny skrypt:
Obecnie uruchom aplikację i otwórz okno z przyciskami.
Po naciśnięciu pierwszego przycisku zostanie otwarte okno dla
"Kociol1".
Po naciśnięciu drugiego przycisku zostanie otwarte okno dla
"Kociol2".