Moduli di controllo di utilizzare script e insiemi di procedure

Traduzione articoli Traduzione articoli
Identificativo articolo: 184745 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

In questo articolo viene illustrato come utilizzare le proprietÓ del controllo Microsoft Script al segmento di codice in moduli e procedure. Viene inoltre illustrato come Ŕ possibile determinare in modo dinamico il numero di argomenti e se la procedura Ŕ Function o Sub.

Informazioni

Il controllo Microsoft Script include funzionalitÓ che consentono all'applicazione host per il segmento di script in diversi moduli. Il modulo predefinito Ŕ "Globali", sempre presente. Moduli diversi possono contenere le procedure dello stesso nome (i nomi delle procedure avere ambito del modulo).

Il controllo Microsoft Script include anche le proprietÓ di routine che consentono all'applicazione host determinare dinamicamente se la procedura Ŕ una funzione o una routine Sub, nonchÚ il numero di argomenti che previsto. In tal modo l'applicazione host richiedere all'utente per il corretto numero di valori di parametro.

La proprietÓ Modules del controllo script Ŕ un oggetto che contiene un insieme di oggetti del modulo. Dispone della seguente proprietÓ e metodi:
  • Numero: Numero di moduli.
  • Item(x): Restituisce un singolo oggetto Module.
  • Aggiungere nome: aggiunge un modulo vuoto con il nome specificato.
L'oggetto modulo dispone della seguente proprietÓ e metodi:
  • Nome: Il nome di modulo.
  • Procedure: L'oggetto procedure
  • Codice AddCode: aggiunge il codice del modulo.
  • Nome esecuzione, args: esegue la routine denominata.
L'oggetto procedure contiene un insieme di oggetti di routine. Dispone della seguente proprietÓ e metodi:
  • Numero: Il numero di routine del modulo.
  • Item(x): Restituisce un singolo oggetto procedure.
L'oggetto di procedure presenta le proprietÓ e i metodi seguenti:
  • Nome: Il nome di routine.
  • HasReturnValue: Indica se la procedura Ŕ un Sub o una funzione.
  • NumArgs: Il numero di argomenti per la procedura Ŕ necessario.
Nota: Non tutti i metodi degli oggetti elencati e le proprietÓ vengono assegnati, solo quelli rilevanti per questo articolo.

Nell'esempio riportato di seguito viene fornito un programma interattivo viene illustrato come utilizzare tali metodi e proprietÓ:

Importante: Microsoft fornisce esempi di programmazione a scopo puramente illustrativo, senza garanzia espressa o implicita, ivi incluse, senza limitazioni, le garanzie implicite di commerciabilitÓ e/o idoneitÓ per uno scopo specifico. In questo articolo si presume che l'utente conosca il linguaggio di programmazione in questione e gli strumenti utilizzati per creare ed eseguire il debug delle procedure.

Esempio

  1. In Visual Basic, creare un nuovo progetto (per impostazione predefinita viene creato Form1).
  2. Fare clic su componenti dal menu progetto e quindi selezionare la casella di controllo "Controllo Microsoft Script 1.0".
  3. Aggiungere il controllo script (ScriptControl1), una casella di testo (testo1) tre pulsanti di comando (Command1, Command2, Command3), e due tipi di elenco caselle (List1 List2) a Form1. Impostare la proprietÓ MultiLine della casella di testo su TRUE. Ridimensionare la casella di testo contenere 5 righe di 30 caratteri.
  4. Aggiungere il seguente codice per Form1:
          Private Sub Command1_Click()
            ScriptControl1.Modules.Add Text1.Text
            Form_Activate
          End Sub
    
          Private Sub Command2_Click()
            ScriptControl1.Modules(List1).AddCode Text1.Text
            List1_Click
          End Sub
    
          Private Sub Command3_Click()
          Dim RetVal As Variant, m As Variant
            Set m = ScriptControl1.Modules(List1.Text)
            With m.Procedures(List2.Text)
              Select Case .NumArgs
                Case 0
                  RetVal = m.Run(List2.Text)
                Case 1
                  RetVal = m.Run(List2.Text, 5)
                Case 2
                  RetVal = m.Run(List2.Text, 4, 23)
                Case Else
                  MsgBox "Procedure has too many arguments"
              End Select
              If .HasReturnValue Then
                MsgBox List2.Text & " returned: " & RetVal
              End If
            End With
          End Sub
    
          Private Sub Form_Activate()
          Dim m As Variant
            List1.Clear
            With SCriptControl1
              .Language = "VBScript"
              .AllowUI = True
              For Each m In .Modules
                List1.AddItem m.Name
              Next m
            End With
          End Sub
    
          Private Sub Form_Load()
            Command1.Caption = "Add Module"
            Command2.Caption = "Add Code"
            Command3.Caption = "Run Procedure"
          End Sub
    
          Private Sub List1_Click()
          Dim m As String, p As Variant
            m = List1
            List2.Clear
            If m = "" Then Exit Sub
            For Each p In ScriptControl1.Modules(m).Procedures
              List2.AddItem p.Name
            Next p
          End Sub
    
          Private Sub List2_Click()
          Dim m As String, p As String, r As Boolean, a As Long
            m = List1
            p = List2
            With ScriptControl1.Modules(m).Procedures(p)
              r = .HasReturnValue
              a = .NumArgs
            End With
            MsgBox m & "." & p & " has " & IIf(r, "a", "no") & _
                   " return value and " & a & " arguments"
          End Sub
    						
  5. Eseguire Form1.
  6. Creare un nuovo modulo digitandone quanto segue nella casella di testo e scegliendo Aggiungi modulo:
          Mod2
    
    						
  7. Digitare il seguente script nella casella testo:
          Function Calc(X)
            Calc = X * 2
          End Function
    						
  8. Selezionare globale in List1 e quindi fare clic su Aggiungi di codice per aggiungere al modulo globale.
  9. Digitare il seguente script nella casella di testo:
          Function Calc(X, Y)
            Calc = X * Y
          End Function
    
          Sub Test()
            MsgBox "The Test Sub in Module Mod2"
          End Sub
    						
  10. Selezionare Mod2 in List1 e quindi fare clic su Aggiungi di codice per aggiungere al modulo globale.
  11. Fare clic sui vari moduli e le procedure. Quando si seleziona la procedura che viene visualizzata una finestra di messaggio, che indica se la routine ha un valore restituito, nonchÚ il numero di argomenti viene eseguito.
  12. Dopo aver selezionato una routine, fare clic su Esegui Procedure per l'esecuzione. Il codice determina il numero di argomenti da utilizzare e verrÓ visualizzato con i risultati di diverse finestre di messaggio.
NOTA:
  • ╚ possibile che il nome del modulo globale non essere sempre "Global" seconda versione del controllo o di localizzazione. Utilizzare la costante GlobalName anzichÚ rigido - codifica la parola "Globali".
  • Non esiste un metodo per rimuovere i singoli moduli o routine. ╚ necessario utilizzare il metodo .Clear del controllo script per cancellare tutto il codice. ╚ possibile sovrascrivere una routine utilizzando il metodo di .AddCode con una routine che lo stesso nome.

Riferimenti

Per informazioni su come ottenere il controllo di script, vedere l'articolo seguente della Microsoft Knowledge Base riportato di seguito:
184739: INFO: dove ottenere il controllo script

Per ulteriori informazioni ed esempi sulla chiamata di routine nel modulo globale, vedere il seguente articolo della Microsoft Knowledge Base riportato di seguito:
184740: come chiamata di funzioni mediante il controllo script

Controllo Microsoft Script Guida:
   HasReturnValue Property
   NumArgs Property
   AddCode Method
   Run Method
   Modules Collection
   Procedures Collection
				

ProprietÓ

Identificativo articolo: 184745 - Ultima modifica: martedý 13 luglio 2004 - Revisione: 4.1
Le informazioni in questo articolo si applicano a:
  • Microsoft Visual Basic 5.0 Learning Edition
  • Microsoft Visual Basic 6.0 Learning Edition
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
  • Microsoft Visual Basic 4.0 Standard Edition
  • Microsoft Visual Basic 4.0 Professional Edition
  • Microsoft Visual Basic 4.0 32-Bit Enterprise Edition
  • Microsoft Visual Basic for Applications 5.0
Chiavi:á
kbmt kbhowto kbscript KB184745 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 184745
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com