Promotic

InputBox - metoda obiektu Pm

Opis:
Ustawienie wartości przez użytkownika (przy pomocy okna edycyjnego) jednej lub kilku zmiennych (zmienne typu tablica).
Niniejsza metoda jest przestarzała (lecz funkcjonalna) oraz dogodniejszym jest zastosowanie obiektu PmForm.
Składnia:
Boolean InputBox(String sDlgTitle, String sDlgStyle, Variant vItemValue, Variant vItemName, Variant vItemType, [Variant vItemAttr1], [Variant vItemAttr2])
Parametry:
sDlgTitle(String) Tytuł okna edycyjnego
sDlgStyle(String) Styl okna. Przykład: "left:100;top:200;z-order:topmost;button-cancel:no;"
left - Pozycja lewej krawędzi okna względem do całego monitora (w pikselach). Dla określenia pozycji można zastosować na przykład właściwość PmgObject.ScreenX lub PmaPanel.ScreenX.
right - Pozycja prawej krawędzi okna względem do całego ekranu (w pikselach). Nie określać, jeżeli jest określony left. Jeżeli nie jest określony ani left ani right, wtedy okno zostanie wycentrowane poziomo.
top - Pozycja górnej krawędzi okna względem do całego ekranu (w pikselach). Do okreólenia pozycji można zastosować na przykład właściwości PmgObject.ScreenY lub PmaPanel.ScreenY.
bottom - Pozycja dolnej krawędzi okna względem do całego ekranu (w pikselach). Nie określać, jeżeli jest określony top. Jeżeli nie jest określony ani top ani bottom, wtedy okno zostanie wycentrowane pionowo.
z-order - wartość topmost oznacza, że okno zostanie wyświetlone ponad wszystkimi oknami Windows.
button-cancel - Wygląd przycisku Cofnij. Wartość no oznacza, że przycisk nie będzie widoczny.
vItemValue[do odczytu i zapisu] (Variant) zmienna (lub tablica zmiennych) do wprowadzania wartości
vItemName(Variant) Tekst opisu (lub tablica z tekstami opisu) do zmiennej vItemValue
vItemType(Variant) tekst (lub tablica tekstów) określająca typ wprowadzanej wartości:
"string" - Jest wprowadzana wartość tekstowa (typ danych String). Wygląd graficzny do wprowadzania jest EditBox.
vItemAttr1 (typ Integer) określa maksymalną liczbę wyświetlonych znaków (tzn. wpływa na szerokość EditBoxa). Maksymalna długość wprowadzanego tekstu wynosi 1000 znaków. Jeżeli ilość wyświetlonych znaków jest mniejsze niż ilość wprowadzanych znaków, wtedy w oknie do wprowadzanai można poruszać się przy pomocy klawiszy kursora (skrolować).
vItemAttr2 nie jest wykorzystane - nie określać lub ustawić na: null dla JavaScript lub Empty dla VBScript.
"int" - Jest wprowadzana liczba całkowita (typ danych Long). Wygląd graficzny do wprowadzania jest EditBox.
vItemAttr1 (typ danych Long) określa zakres dolny wprowadzanej wartości (jeżeli nie ma być kontrolowany nie, wtedy nie określać lub ustawić na: null dla JavaScript lub Empty dla VBScript).
vItemAttr2 (typ danych Long) określa zakres górny wprowadzanej wartości (jeżeli nie ma być kontrolowany nie, wtedy nie określać lub ustawić na: null dla JavaScript lub Empty dla VBScript).
"real" - Jest wprowadzana liczba rzeczywista (typ danych Double). Wygląd graficzny do wprowadzania jest EditBox.
vItemAttr1 (typ danych Double) określa zakres dolny wprowadzanej wartości (jeżeli nie ma być kontrolowany nie, wtedy nie określać lub ustawić na: null dla JavaScript lub Empty dla VBScript).
vItemAttr2 (typ danych Double) określa zakres górny wprowadzanej wartości (jeżeli nie ma być kontrolowany nie, wtedy nie określać lub ustawić na: null dla JavaScript lub Empty dla VBScript).
"bool" - Jest wprowadzana wartość true lub false (typ danych Boolean). Wygląd graficzny do wprowadzania jest CheckBox.
vItemAttr1 oraz vItemAttr2 nie jest wykorzystane - nie określać lub ustawić na: null dla JavaScript lub Empty dla VBScript.
"enum" - Wybór z kilku zdefiniowanych opcji. Wprowadzana jest nie ujemna liczba całkowita (typ danych Long), która przedstawia indeks (indeksowane od 0) wyboru z kilku opcji. Wygląd graficzny do wprowadzania jest ComboBox.
vItemAttr1 (typ Integer) określa maksymalną liczbę wyświelonych znaków (tzn. określa szerokość ComboBoxa).
vItemAttr2 (typ String) określa opcje. Chodzi o tekst słów, oddzielanych znakiem | (tzn. linia pionowa), na przykład "1.opcja|2.opcja".

Wartość w vItemValue (typu Long) na początku określa słowo, które będzie domyślnie wybrane. Na końcu znajduje się tam indeks wybranej opcji (słowa).
"password" - Jest wprowadzany tekst (typ danych String) jako hasło. Wygląd graficzny do wprowadzania jest EditBox, lecz zamiast wprowadzanych znaków są wyświetlane tylko gwiazdki *.
vItemAttr1 oraz vItemAttr2 mają takie samo znaczenie jak w przypadku typu "string".
"static" - Nie służy do wprowadzania. Wyświetla tylko tekst statyczny, który jest określony w parametrze vItemName. W tym tekście mogą znajdować cię takie znaki jak "nowy wiersz" (patrz stała vbCrLf), do rozdzielenia wiersza dojdzie również jeżeli wyświetlony tekst byłby zbyt szeroki.
Parametr vItemValue nie jest wykorzystany - ustawić na: null dla JavaScript lub Empty dla VBScript.
vItemAttr1 (typ String) określa wygląd tekstu statycznego. Jeżeli nie jest określony, wtedy tekst jest wyrównany wlewo. Jeżeli jest wprowadzony tekst "center", wtedy tekst jest wycentrowany.
vItemAttr2 nie jest wykorzystane - nie określać lub ustawić na: null dla JavaScript lub Empty dla VBScript.
vItemAttr1[opcjonalne] (Variant) Pierwszy atrybut (lub tablica atrybutów) którego znaczenie zmienia się według vItemType
vItemAttr2[opcjonalne] (Variant) Drugi atrybut (lub tablica atrybutów) którego znaczenie zmienia się według vItemType
Wartość zwrotna:
true - Jeżeli InputBox był zamknięty przy pomocy przycisku "OK"
false - Jeżeli InputBox był zamknięty przy pomocy przycisku "Cofnij"
Notatka:
Do wytwarzania bardziej złożonych dialogów do wprowadzania można zastosować obiekt PmaPanel otwarty przy pomocy metody PmaPanel.OpenView.

Metoda ta nie działa w Web panelach.
Przykład1:
Proste zastosowanie metody do wprowadzania jednej wartości:
VBScriptWybierz oraz skopiuj do schowka

Dim val
val = 3.14
If Pm.InputBox("Wprowadź wartość", "", val, "Moc", "real", 0, 100) Then
' InputBox został zakończony przy pomocy przycisku "OK"
Pm.Debug "val=" & val
End If
Przykład2:
InputBox można zastosować (podobnie jak Pm.MessageBox) tylko do wyświetlenia tekstu. InputBox jest jednak bardziej uniwersalny i można wprowadzić na przykład współrzędne umieszczenia okna:
VBScriptWybierz oraz skopiuj do schowka

Dim sText
sText = "Błąd uruchomienia trybu ochrony" & vbCrLf & "Temperatura poza dozwolonym zakresem"
Pm.InputBox "Błąd krytyczny", "button-cancel:no;left:300;top:300;", Empty, sText, "static", "center"
Przykład3:
Ustawienie jednej zmiennej rzeczywistej w zakresie <40, 80> do obiektu PmaNumber o nazwie "Number". InputBox jest wywołany w zdarzeniu Pmg obiektu (tzn. parametr pMe jest ten Pmg obiekt) i jest ulokowany po lewej od tego obiektu:
VBScriptWybierz oraz skopiuj do schowka

Dim oNumber, val, sStyle
Set oNumber = pMe.Pm("/Number")
val = oNumber.Value
sStyle = "right:" & pMe.ScreenX & ";top:" & pMe.ScreenY & ";"
If Pm.InputBox("Wprowadź wartość", sStyle, val, "Moc", "real", 40, 80) Then
' InputBox został zakończony przy pomocy przycisku "OK"
oNumber.Value = val
End If
Przykład4:
Ustawienie kilku wartości jednocześnie, okno jest wyświetlane "Zawsze na wierzchu" i jest umieszczone na środku ekranu:
VBScriptWybierz oraz skopiuj do schowka

Dim arrValue, arrName, arrStyle, arrAttr1, arrAttr2, ret
arrValue = Array("Sortowanie", true, 2, 0.4, Empty, 1)
arrName = Array("Nazwa procesu", "Zezwolony", "ilość powtórzeń", "Procent pomyślności", "", "Wybór trybu")
arrStyle = Array("string", "bool", "int", "real", "static", "enum")
arrAttr1 = Array(20, Empty, 0, 0, Empty, 20)
arrAttr2 = Array(Empty, Empty, 10, 1, Empty, "Wsadowy|Spójny|Dyskretny")
ret = Pm.InputBox("Dane wejściowe", "z-order:topmost;", arrValue, arrName, arrStyle, arrAttr1, arrAttr2)

If ret Then
' InputBox został zakończony przy pomocy przycisku "OK"
Pm.Debug "Nazwa procesu:" & arrValue(0)
Pm.Debug "Zezwolony:" & arrValue(1)
Pm.Debug "ilość powtórzeń:" & arrValue(2)
Pm.Debug "Procent pomyślności:" & arrValue(3)
Pm.Debug "Wybór trybu:" & arrValue(5)
End If
Nawigacja:
 
- Pm
 
- Abs
- Cos
- E
- Exp
- InputBox
 
 
- LN2
- PI
- Pow
- Sin
- Tan
© MICROSYS, spol. s r.o.