CallByName függvény

Hatókör
Microsoft 365-höz készült Access Access 2024 Access 2021 Access 2019 Access 2016

Végrehajtja egy objektum metódusát, vagy beállítja vagy visszaadja egy objektum egy tulajdonságát.

Szintaxis

CallByName(objektum , procname, hívástípus [, args()])

A CallByName függvény argumentumai a következők:

Argumentum Leírás:
objektum Kötelező megadni. Variant (objektum). Annak az objektumnak a neve, amelyen a függvényt végre szeretné hajtani.
procname Kötelező megadni. Variáns (Karakterlánc). Az objektum egy tulajdonságának vagy metódusának a nevét tartalmazó karakterlánc-kifejezés.
hívástípus Kötelező megadni. Állandó. A hívott eljárás típusát képviselő vbCallType típusú állandó.
args() Nem kötelező. Variant (tömb).

    

Megjegyzések

A CallByName függvény tulajdonság lekérésére vagy beállítására, illetve metódus futásidőben való meghívására használható egy karakterláncnév használatával.

A következő példában az első sor a CallByName tulajdonsággal beállítja egy szövegmező MousePointer tulajdonságát, a második sor a MousePointer tulajdonság értékét kapja, a harmadik sor pedig meghívja a Move metódust a szövegmező áthelyezéséhez:

CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet)
CallByName Text1, "Move", vbMethod, 100, 100

Példa

Megjegyzés

A következő példák egy Visual Basic for Applications (VBA) modulban mutatják be a függvény használatát. A VBA használatáról a Keresés elem mellett található legördülő listából a fejlesztői forrásokat választva, majd egy vagy több keresőszót megadva kaphat további tájékoztatást.

Ez a példa a CallByName függvénnyel meghívja egy parancsgomb Move metódusát.

A példában látható még egy űrlap (Form1) egy gombbal (Command1) és egy címkével ().Label1 Az űrlap betöltésekor a címke Cím tulajdonsága annak a metódusnak a nevére van beállítva, amely meghívja – jelen esetben a "Move" szót. Amikor a gombra kattint, a CallByName függvény meghívja a gomb helyének módosítására szolgáló metódust.

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