Izpilda objekta metodi vai iestata vai atgriež objekta objekts.
Sintakse
CallByName ( object , procname, calltype [, args()])
Funkcijas CallByName sintaksei ir šādi argumenti.
Arguments |
Apraksts |
objekts |
Obligāts arguments. Variants (Objekts). Tā objekta nosaukums, kurā tiks izpildīta funkcija. |
procname |
Obligāts arguments. Variants (Virkne). Virknes izteiksme, kurā ir objekta rekvizīta vai metodes nosaukums. |
calltype |
Obligāts arguments. Konstante. Konstante, kuras tips ir vbCallType , kas norāda izsauktās procedūras tipu. |
args () |
Neobligāts arguments. Variants (masīvs). |
Piebildes
Funkcija CallByName tiek izmantota, lai iegūtu vai iestatītu rekvizītu vai palaistu metodi, izmantojot virknes nosaukumu.
Šajā piemērā pirmajā rindiņā tiek izmantots text box rekvizīta MousePointer iestatījums CallByName, bet otrajai rindiņai tiek lietota rekvizīta MousePointer vērtība, bet trešajā rindiņā tiek izsaukta metode Move (Pārvietot), lai pārvietotu tekstlodziņu.
CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet) CallByName Text1, "Move", vbMethod, 100, 100
Piemērs
Piezīme.: Turpmākajos piemēros redzama šīs funkcijas izmantošana Visual Basic for Applications (VBA) modulī. Lai iegūtu papildinformāciju par darbu ar VBA, nolaižamajā sarakstā atlasiet Uzziņas materiāli izstrādātājiem blakus meklēšanas lodziņam un ievadiet šajā lodziņā vienu vai vairākus vārdus.
Šajā piemērā izmantota funkcija CallByName, lai izsauktu komandpogas metodi Move.
Piemērā tiek izmantota arī forma (Form1) ar pogu (Command1) un etiķeti (Label1). Kad veidlapa ir ielādēta, etiķetes rekvizīts Paraksts tiek iestatīts uz metodes nosaukumu, kuru vēlaties izsaukt, šajā gadījumā "Pārvietot". Noklikšķinot uz pogas, funkcija CallByName izsauc metodi, lai mainītu pogas atrašanās vietu.
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