Bagikan melalui


Metode IVBGetControl::EnumControls (vbinterf.h)

Menghitung kontrol pada formulir.

Catatan Penggunaan metode ini tidak lagi direkomendasikan karena kontainer selain Visual Basic tidak mendukungnya.
 

Sintaks

HRESULT EnumControls(
  [in]  DWORD         dwOleContF,
  [in]  DWORD         dwWhich,
  [out] LPENUMUNKNOWN *ppenumUnk
);

Parameter

[in] dwOleContF

Menentukan jenis objek OLE yang akan dijumlahkan. Parameter ini dapat menjadi salah satu nilai berikut yang dijumlahkan oleh enumerasi OLECONTF .

Nilai Makna
OLECONTF_EMBEDDINGS
Menghitung objek yang disematkan pada formulir. Sertakan bendera ini untuk menghitung kontrol OLE.
OLECONTF_LINKS
Menghitung objek tertaut pada formulir.
OLECONTF_OTHER
Menghitung semua objek OLE pseudo. Sertakan bendera ini untuk menghitung kontrol VBX.
OLECONTF_ONLYUSER
Menghitung hanya objek yang diketahui pengguna.
OLECONTF_ONLYIFRUNNING
Menghitung hanya objek yang berjalan pada formulir.
 

Saat menghitung kontrol OLE, disarankan agar Anda menggabungkan bendera OLECONTF_ONLYUSER, OLECONTF_ONLYIFRUNNING, dan OLECONTF_EMBEDDINGS. Untuk menyertakan kontrol OLE dan kontrol VBX, tambahkan bendera OLECONTF_OTHERS ke daftar ini. Untuk menghitung hanya kontrol VBX, hapus bendera OLECONTF_EMBEDDINGS dan sertakan bendera OLECONTF_OTHERS .

[in] dwWhich

Menentukan kumpulan kontrol yang akan dijumlahkan. Parameter ini bisa menjadi salah satu nilai berikut.

Nilai Makna
GCW_WCH_SIBLING
0x00000001
Menghitung semua saudara kandung dari kontrol.
GC_WCH_CONTAINER
0x00000002
Menghitung semua objek yang merupakan induk kontrol Anda. Anda tidak dapat menggunakan bendera GC_WCH_FONLYAFTER atau GC_WCH_FONLYBEFORE dengan bendera ini.
GC_WCH_CONTAINED
0x00000003
Menghitung semua objek yang merupakan anak-anak kontrol Anda. Anda tidak dapat menggunakan bendera GC_WCH_FONLYAFTER atau GC_WCH_FONLYBEFORE dengan bendera ini.
GC_WCH_ALL
0x00000004
Menghitung semua objek.
GC_WCH_FREVERSEDIR
0x08000000
Menghitung dan mengatur kontrol dalam arah urutan tab terbalik. Bendera ini dapat digabungkan dengan bendera lainnya.
GC_WCH_FONLYAFTER
0x10000000
Menghitung semua kontrol yang muncul setelah kontrol Anda dalam urutan tab.
GC_WCH_FONLYBEFORE
0x20000000
Menghitung semua kontrol yang muncul sebelum kontrol Anda dalam urutan tab.
GC_WCH_FSELECTED
0x40000000
Menghitung semua kontrol yang saat ini dipilih.
 

Gunakan salah satu bendera GC_WCH_SIBLING, GC_WCH_CONTAINER, GC_WCH_CONTAINED, atau GC_WCH_ALL dalam kombinasi dengan salah satu benderaxxx GC_WCH_F.

Dalam kode VBX, bendera GC_FORM diteruskan ke VBGetControl untuk mendapatkan penunjuk ke formulir. Dalam kode kontrol OLE, tidak ada penggantian langsung untuk bendera ini. Sebagai gantinya, teruskan GC_WHC_ALL ke EnumControls dan gunakan penunjuk ke kontrol pertama dalam enumerasi. Kontrol pertama dalam enumerasi selalu berupa formulir saat menggunakan GC_WHC_ALL.

[out] ppenumUnk

Arahkan ke enumerasi objek OLE.

Nilai kembali

Metode ini mendukung nilai pengembalian standar E_INVALIDARG, E_OUTOFMEMORY, dan E_UNEXPECTED, serta berikut ini:

Keterangan

Saat memigrasikan kontrol VBX ke kontrol OLE, EnumControls menggantikan Visual Basic VBGetControl, yang tidak lagi didukung.

Persyaratan

   
Target Platform Windows
Header vbinterf.h

Lihat juga

IVBGetControl

OLECONTF