Bagaimana memanggil fungsi menggunakan Script kontrol

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 184740 - Melihat produk di mana artikel ini berlaku.
Perbesar semua | Perkecil semua

Pada Halaman ini

RINGKASAN

Artikel ini menyediakan contoh kode untuk Script kontrol yang menunjukkan berbagai metode untuk memanggil script fungsi dari Visual Basic.

INFORMASI LEBIH LANJUT

PENTING: Microsoft memberi contoh pemprograman untuk ilustrasi saja, tanpa garansi baik tersurat maupun tersirat, termasuk, namun tidak terbatas pada untuk, jaminan tersirat mengenai keadaan yang dapat diperjualbelikan dan/atau kesesuaian untuk tujuan tertentu. Artikel ini mengasumsikan bahwa Anda sudah familiar dengan pemrograman bahasa yang ditunjukkan dan alat-alat yang digunakan untuk membuat dan memperbaiki prosedur.

Script kontrol dapat meng-host VBScript, JavaScript, dan setiap lainnya sesuai bahasa scripting, sehingga pengguna dapat script aplikasi Anda dalam cara menggunakan VBScript atau JavaScript untuk menyediakan fungsionalitas tambahan untuk halaman Web.

Artikel berikut pada Basis Pengetahuan Microsoft menjelaskan bagaimana mendapatkan Script kontrol:
184739: INFO: di mana untuk mendapatkan Script kontrol

Script kontrol menyediakan empat metode untuk memanggil Sub dan fungsi rutinitas script:
  • Eval: Mengevaluasi ekspresi teks.
  • Berjalan: Menjalankan bernama Sub atau fungsi.
  • Jalankan: Mengeksekusi skrip pernyataan.
  • Sebagai metode objek modul.

Eval

Konvensi panggilan adalah:
  Result = ScriptControl.Eval("some text expression")

				
Anda dapat menggunakan metode ini untuk memanggil kedua fungsi intrinsik script, serta pengguna fungsi. Fungsi argumen berlalu sebagai nilai literal di ekspresi teks dan dapat dikodekan keras atau dipenggal dari variabel.

Catatan: Metode ini tidak dapat digunakan untuk memanggil subrutin.

Menjalankan

Konvensi panggilan adalah:
  Result = ScriptControl.Run("Name", arg1, arg2, ... argn)

				
Anda dapat menggunakan metode ini untuk memanggil subrutin, dalam hal hasil kembali kosong dan Anda dapat menggunakan konvensi panggilan alternatif untuk mengabaikan hasil kembali:
  ScriptControl.Run "Name", arg1, arg2, ... argn

				
Catatan: Nama adalah nama Sub atau fungsi dan arg1... argn adalah opsional tergantung pada Sub atau fungsi tersebut.

Melaksanakan

Konvensi panggilan adalah:
  ScriptControl.Execute "statement text"

				
Metode ini memungkinkan Anda untuk panggilan pernyataan intrinsik atau Sub rutin. Anda juga dapat digunakan untuk memanggil fungsi, tetapi hasilnya kembali turun.

Modul metode

Konvensi panggilan adalah:
   Result = ScriptControl.Modules(modulename).functionname(arg1, arg2, ...)
   ScriptControl.Modules(modulename).subname arg1, arg2, ...
				

Modul default diberikan dalam GlobalModule konstan, seperti:
   Result = ScriptControl.Modules(GlobalModule).MyFunction(5)
   ScriptControl.Modules(GlobalModule).MySub 5, "A"
				

Untuk informasi lebih lanjut tentang ScriptControl modul, silakan lihat berikut artikel di dalam Basis Pengetahuan Microsoft:
184745: Bagaimana menggunakan Script kontrol modul dan prosedur koleksi

Contoh

  1. Dalam Visual Basic, membuat sebuah proyek baru. Form1 dibuat secara default.
  2. Klik komponen pada menu proyek, dan kemudian pilih "Microsoft Skrip kontrol 1.0 "kotak centang.
  3. Tambahkan Script kontrol (ScriptControl1), kotak teks (Text1), dan perintah tombol (Command1) untuk membentuk. Mengatur properti MultiLine kotak teks untuk benar.
  4. Tambahkan kode berikut untuk Form1:
          Private Sub Command1_Click()
            With ScriptControl1
              ' Set script language (VBScript is the default).
              .Language = "VBScript"
              ' Set UI interaction (TRUE is the default).
              .AllowUI = True
              ' Copy the script to the control.
              .AddCode Text1.Text
              ' Demonstrate the Eval method.
              Debug.Print .Eval("AddTwo(5,7)")
              ' Demonstrate the Run method both with and without return values.
              .Run "Hello", "Jane Doe"
              Debug.Print .Run("Hello", "James Smith")
              .Run "AddTwo", 4, 6
              Debug.Print .Run("AddTwo", 7, 8)
              ' Demonstrate the ExecuteStatement method.
              .ExecuteStatement "Hello ""Sue Smith"""
              .ExecuteStatement "AddTwo 9,18"
              .ExecuteStatement "MsgBox CStr(AddTwo(3,8))"
              .Modules(GlobalModule).Hello "Jane Doe"
              Dim oMod As Object
              Set oMod = .Modules(GlobalModule)
              Debug.Print oMod.AddTwo 12, 24
              Set oMod = Nothing
            End With
          End Sub
    
    						
  5. Menjalankan Form1, dan membuka jendela Debug.
  6. Ketik script berikut di kotak teks:
          Sub Hello(YourName)
            MsgBox "Hello " & YourName
          End Sub
    
          Function AddTwo(X1, X2)
            AddTwo = X1 + X2
          End Function
    
    						
  7. Klik CommandButton.

    Catatan: Dua pernyataan berikut tidak menghasilkan output karena fungsi kembali itu hilang dan kode ini tidak output hasil melalui cara lain, seperti global variabel atau pesan kotak:
          .Run "AddTwo", 4, 6
          .ExecuteStatement "AddTwo 9,18"
    
    						

REFERENSI

Untuk informasi tentang cara mendapatkan Script kontrol, lihat artikel berikut pada Basis Pengetahuan Microsoft:
184739: INFO: di mana untuk mendapatkan Script kontrol

(c) Microsoft Corporation 1998, All Rights Reserved.
Kontribusi oleh Malcolm Stewart, Microsoft Corporation

Properti

ID Artikel: 184740 - Kajian Terakhir: 16 September 2011 - Revisi: 2.0
Berlaku bagi:
  • Microsoft Visual Basic 5.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 4.0 Standard Edition
Kata kunci: 
kbhowto kbmt KB184740 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:184740

Berikan Masukan

 

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