Vykdo objekto metodą arba nustato ar pateikia objekto ypatybę.
Sintaksė
CallByName(object , procname, calltype [, args()])
Funkcijos CallByName sintaksę sudaro šie argumentai:
| Argumentas | Aprašymas |
|---|---|
| objektas | Būtinas. Variantas (objektas). Objekto, kuriame bus vykdoma funkcija, pavadinimas. |
| procname | Būtinas. Variantas (eilutė). Eilutės reiškinys, kuriame yra objekto ypatybės arba metodo pavadinimas. |
| skambučio tipas | Būtinas. Pastovus. " vbCallType " tipo konstanta, nurodanti iškviečiamos procedūros tipą. |
| argumentai() | Pasirinktinis. Variantas (masyvas). |
Pastabos
Funkcija CallByName naudojama norint gauti ar nustatyti ypatybę arba iškviesti metodą vykdymo metu naudojant eilutės pavadinimą.
Toliau pateiktame pavyzdyje, pirmoje eilutėje naudojama CallByName teksto laukelio ypatybei MousePointer nustatyti, antroje eilutėje gaunama ypatybės MousePointer reikšmė, o trečioje eilutėje iškviečiamas metodas Perkelti , kad būtų perkeltas teksto laukas:
CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet)
CallByName Text1, "Move", vbMethod, 100, 100
Pavyzdys
Pastaba
Pateiktuose pavyzdžiuose parodyta, kaip naudoti šią funkciją „Visual Basic for Applications“ (VBA) modulyje. Daugiau informacijos apie darbą su VBA rasite išplečiamajame sąraše pasirinkę Kūrėjų nuoroda (šalia Ieškos) ir ieškos lauke įvedę vieną ar daugiau sąlygų.
Šiame pavyzdyje naudojama funkcija CallByName , kad būtų iškviestas komandos mygtuko metodas Perkelti .
Pavyzdyje taip pat naudojama forma (Form1) su mygtuku (Command1) ir žyma ().Label1 Įkėlus formą, žymos ypatybė Caption nustatoma kaip metodo, kurį reikia iškviesti, šiuo atveju "Move", pavadinimas. Spustelėjus mygtuką, funkcija CallByName iškviečia mygtuko vietos keitimo būdą.
Option Explicit
Private Sub Form_Load()
Label1.Caption = "Move"' Name of Move method.
End Sub
Private Sub Command1_Click()
If Command1.Left <> 0 Then
CallByName Command1, Label1.Caption, vbMethod, 0, 0
Else
CallByName Command1, Label1.Caption, vbMethod, 500, 500
End If