Sub-rotinas e funções

Sub-rotinas e funções do VBScript

Esta secção apresenta uma visão geral da utilização de sub-rotinas e procedimentos nos scripts Visual Basic do Altum Designer.

Passagem de parâmetros para procedimentos

Quando uma função ou sub-rotina (um procedimento/método) capaz de aceitar parâmetros é definida num script, as variáveis podem ser passadas para a função ou sub-rotina de duas formas: por referência ou por valor, utilizando ByRef ou ByVal , respetivamente.

Para declarar o método ao qual os parâmetros são passados, utilize o ByRef ou ByVal na lista de parâmetros ao definir a função ou sub-rotina num Sub ou Function . Por exemplo, o seguinte fragmento de código define uma sub-rotina que aceita dois parâmetros. O primeiro é passado por valor e o segundo por referência:

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

A diferença entre os dois métodos é que ByRef passa uma referência à variável e permite que a sub-rotina/função efetue alterações na variável real que é passada como parâmetro. Este é o método predefinido de passagem de parâmetros e é utilizado se o método não for explicitamente declarado.

ByVal passa apenas o valor da variável. A sub-rotina ou função pode utilizar este valor, mas a variável original passada não é alterada.

Os exemplos seguintes ilustram as diferenças entre os métodos. O procedimento principal é o seguinte:

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

O procedimento acima inclui uma chamada a um subprocedimento Test — ver abaixo.

Se a subrotina for definida da seguinte forma:

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

Então, as variáveis X e Y no procedimento principal são referenciadas diretamente pela subrotina. O resultado é que os valores de X e Y são alterados pela sub-rotina, de modo que, após Test ser executada, X = 450 e Y = «Número = 45». Este é o comportamento por predefinição quando o método não é explicitamente declarado.

Se, no entanto, a sub-rotina for definida da seguinte forma:

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

Então, após Test ser executada, o procedimento principal apresenta: X = 45 e Y = «Number» — ou seja, permanecem inalterados.

Em alternativa, se a sub-rotina for definida da seguinte forma (métodos mistos):

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

Então, após Test ser executada, X = 450 e Y = «Number», uma vez que Y foi passado por valor, permanece inalterado.

Pode substituir a ByRef configuração de uma função ou sub-rotina colocando parênteses à volta do nome de uma variável na instrução de chamada.

Chamar o Teste com a seguinte instrução:

Test (X), Y

...passaria a variável X por valor, independentemente do método definido para esse parâmetro na definição do procedimento.

Rotinas de data e hora

A linguagem VBScript suporta um conjunto de rotinas de data/hora, conforme descrito abaixo:

Date

Day

Hour

IsDate

Minute

Month

Now

Second

Time

Year

 

 

Rotinas de E/S de ficheiros

A linguagem VBScript suporta o seguinte conjunto de rotinas de E/S de ficheiros:

Dir

FileLen

FileTimeDate

FileCopy

Kill

Name

RmDir

MkDir

 

Rotinas matemáticas

A linguagem VBScript suporta o seguinte conjunto de rotinas matemáticas:

Abs

Atn

Cos

Exp

Log

Not

Oct

Rnd

Sin

Sqn

Tan

 

Rotinas de cadeias de caracteres

A linguagem VBScript suporta uma variedade de rotinas de cadeias de caracteres, conforme descrito abaixo:

Asc

Chr

Format

InStr

InStrRev

LCase

Len

Left

Mid

Right

Str

Trim

LTrim

RTrim

UCase

Rotinas de Processos do Servidor

As rotinas de processos do servidor são utilizadas ao lidar com processos em scripts, especialmente quando é necessário extrair (obter) ou definir cadeias de caracteres para os parâmetros do processo.

Para executar processos e definir parâmetros em scripts, utilize as seguintes funções:

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-LocalizedLocalizado por IA
Caso encontre um problema, selecione o texto/imagem e primaCtrl + Enterpara nos enviar o seu feedback.
Disponibilidade de Recursos

Os recursos disponíveis para você dependem de qual solução Altium você possui – Altium Develop, Altium Agile Teams, Altium Agile Enterprise ou Altium Designer (com assinatura ativa).

Se você não vir um recurso documentado no software que está usando no momento, entre em contato com a equipe de vendas da Altium para saber mais.

Documentação Legada

A documentação do Altium Designer já não é versionada. Se precisar de aceder à documentação de versões anteriores do Altium Designer, visite a secção Documentação Legada da página de Outros Instaladores.

Conteúdo