Podprogramy i funkcje

Podprogramy i funkcje w języku VBScript

W tej sekcji przedstawiono ogólne informacje na temat korzystania z podprogramów i procedur w skryptach Visual Basic programu Altum Designer.

Przekazywanie parametrów do procedur

Gdy w skrypcie zdefiniowana jest funkcja lub podprogram (procedura/metoda), która może przyjmować parametry, zmienne można przekazać do tej funkcji lub podprogramu na dwa sposoby: przez odwołanie lub przez wartość, używając ByRef lub ByVal odpowiednio.

Aby zadeklarować metodę, do której przekazywane są parametry, należy użyć operatora ByRef lub ByVal w liście parametrów podczas definiowania funkcji lub podprogramu w pliku Sub lub Function . Na przykład poniższy fragment kodu definiuje podprogram, który przyjmuje dwa parametry. Pierwszy jest przekazywany przez wartość, a drugi przez odwołanie:

Sub Test (ByVal Param1 As Integer , ByRef B As String)

Różnica między tymi dwiema metodami polega na tym, że ByRef przekazuje odwołanie do zmiennej i pozwala podprogramowi/funkcji na wprowadzanie zmian w rzeczywistej zmiennej przekazanej jako parametr. Jest to domyślna metoda przekazywania parametrów i jest stosowana, jeśli metoda nie została jawnie zadeklarowana.

ByVal przekazuje wyłącznie wartość zmiennej. Podprogram lub funkcja może korzystać z tej wartości, ale pierwotna przekazana zmienna nie ulega zmianie.

Poniższe przykłady ilustrują różnice między tymi metodami. Główna procedura wygląda następująco:

Sub Main
  Dim X, Y
  X = 45 : Y = "Number"
  Test X, Y   ' Call to a subprocedure called Test.
  MsgBox X
   MsgBox Y
End Sub

Powyższa procedura zawiera wywołanie podprocedury Test — patrz poniżej.

Jeśli podprogram jest zdefiniowany w następujący sposób:

Sub Test (ByRef A, ByRef B)
  B = B & " = " & A : A = 10*A
End Sub

Wówczas zmienne X i Y w procedurze głównej są odwołane bezpośrednio przez podprogram. W rezultacie wartości X i Y są modyfikowane przez podprogram, tak że po Test wykonania podprogramu; X = 450, a Y = „Liczba = 45”. Jest to domyślne zachowanie, gdy metoda nie jest jawnie zadeklarowana.

Jeśli jednak podprogram zostanie zdefiniowany w następujący sposób:

Sub Test (ByVal A, ByVal B)
B = B & " = " & A : A = 10*A
End Sub

Wówczas po Test zostanie wykonana, procedura główna zgłasza: X = 45 oraz Y = „Number” — to znaczy, że pozostają one niezmienione.

Alternatywnie, jeśli podprogram jest zdefiniowany w następujący sposób (metody mieszane):

Sub Test (ByRef A, ByVal B)
  B = B & " = " & A : A = 10*A
End Sub

Wówczas po Test zostanie wykonana, X = 450, a Y = „Number”, ponieważ Y została przekazana przez wartość, pozostaje niezmieniona.

Można zmienić ByRef ustawienie funkcji lub podprogramu, umieszczając nazwę zmiennej w nawiasach w instrukcji wywołującej.

Wywołanie funkcji Test za pomocą następującej instrukcji:

Test (X), Y

...spowodowałoby przekazanie zmiennej X przekazałby zmienną przez wartość, niezależnie od metody zdefiniowanej dla tego parametru w definicji procedury.

Procedury związane z datą i czasem

Język VBScript obsługuje zestaw procedur związanych z datą i czasem, przedstawionych poniżej:

Date

Day

Hour

IsDate

Minute

Month

Now

Second

Time

Year

 

 

Procedury operacji wejścia/wyjścia plików

Język VBScript obsługuje następujący zestaw procedur operacji wejścia/wyjścia plików:

Dir

FileLen

FileTimeDate

FileCopy

Kill

Name

RmDir

MkDir

 

Procedury matematyczne

Język VBScript obsługuje następujący zestaw procedur matematycznych:

Abs

Atn

Cos

Exp

Log

Not

Oct

Rnd

Sin

Sqn

Tan

 

Procedury łańcuchowe

Język VBScript obsługuje szereg procedur dotyczących ciągów znaków, opisanych poniżej:

Asc

Chr

Format

InStr

InStrRev

LCase

Len

Left

Mid

Right

Str

Trim

LTrim

RTrim

UCase

Procedury związane z procesami serwera

Funkcje związane z procesami serwerowymi są używane podczas pracy z procesami w skryptach, zwłaszcza gdy zachodzi potrzeba pobrania (uzyskania) lub ustawienia ciągów znaków jako parametrów procesu.

Aby uruchamiać procesy i ustawiać parametry w skryptach, należy używać następujących funkcji:

AddColorParameter

AddIntegerParameter

AddLongIntParameter

AddSingleParameter

AddWordParameter

GetIntegerParameter

GetStringParameter

ResetParameters

RunProcess

Useful functions

SetCursorBusy

ResetCursor

CheckActiveServer

GetActiveServerName

GetCurrentDocumentFileName

RunApplication

SaveCurrentDocument

 

 

Useful Dialogs

ConfirmNoYes

ConfirmNoYesCancel

ShowError

ShowInfo

ShowWarning

 

AI-LocalizedTłumaczenie SI
Jeśli znajdziesz błąd, zaznacz tekst/obraz i naciśnij Ctrl + Enter aby wysłać nam wiadomość.
Dostępność funkcji

Dostępne funkcje zależą od tego, z którego rozwiązania Altium korzystasz – Altium Develop, Altium Agile Teams, Altium Agile Enterprise lub Altium Designer (w ramach aktywnej subskrypcji terminowej).

Jeśli opisana funkcja nie jest widoczna w Twoim oprogramowaniu, skontaktuj się z działem sprzedaży Altium, aby dowiedzieć się więcej.

Starsza dokumentacja

Dokumentacja Altium Designer nie jest już wersjonowana. Jeśli potrzebujesz dostępu do dokumentacji dla starszych wersji Altium Designer, odwiedź sekcję Starsza dokumentacja na stronie Inne instalatory.

Content