Kelas CAxWindow
Kelas ini menyediakan metode untuk memanipulasi jendela yang menghosting kontrol ActiveX.
Penting
Kelas ini dan anggotanya tidak dapat digunakan dalam aplikasi yang dijalankan di Windows Runtime.
Sintaks
class CAxWindow : public CWindow
Anggota
Metode
Fungsi | Deskripsi |
---|---|
AttachControl | Melampirkan kontrol ActiveX yang ada ke CAxWindow objek. |
CAxWindow | Membuat CAxWindow objek. |
CreateControl | Membuat kontrol ActiveX, menginisialisasinya, dan menghostingnya CAxWindow di jendela. |
CreateControlEx | Membuat kontrol ActiveX dan mengambil penunjuk antarmuka (atau penunjuk) dari kontrol. |
GetWndClassName | (Statis) Mengambil nama kelas objek yang CAxWindow telah ditentukan sebelumnya. |
QueryControl | IUnknown Mengambil kontrol ActiveX yang dihosting. |
QueryHost | Mengambil penunjuk IUnknown CAxWindow objek. |
SetExternalDispatch | Mengatur antarmuka pengiriman eksternal yang digunakan oleh CAxWindow objek. |
SetExternalUIHandler | Mengatur antarmuka eksternal IDocHostUIHandler yang digunakan oleh CAxWindow objek. |
Operator
Operator | Deskripsi |
---|---|
operator = | Menetapkan HWND ke objek yang ada CAxWindow . |
Keterangan
Kelas ini menyediakan metode untuk memanipulasi jendela yang menghosting kontrol ActiveX. Hosting disediakan oleh " AtlAxWin80", yang dibungkus oleh CAxWindow
.
Kelas CAxWindow
diimplementasikan sebagai spesialisasi CAxWindowT
kelas. Spesialisasi ini dinyatakan sebagai:
typedef CAxWindowT<CWindow> CAxWindow;
Jika Anda perlu mengubah kelas dasar, Anda dapat menggunakan CAxWindowT
dan menentukan kelas dasar baru sebagai argumen templat.
Persyaratan
Header: atlwin.h
CAxWindow::AttachControl
Membuat objek host baru jika belum ada dan melampirkan kontrol yang ditentukan ke host.
HRESULT AttachControl(
IUnknown* pControl,
IUnknown** ppUnkContainer);
Parameter
pControl
[di] Penunjuk ke IUnknown
kontrol.
ppUnkContainer
[out] Penunjuk ke IUnknown
host ( AxWin
objek ).
Tampilkan Nilai
Nilai HRESULT standar.
Keterangan
Objek kontrol yang sedang dilampirkan harus diinisialisasi dengan benar sebelum memanggil AttachControl
.
CAxWindow::CAxWindow
Membuat CAxWindow
objek menggunakan handel objek jendela yang ada.
CAxWindow(HWND hWnd = NULL);
Parameter
hWnd
Handel ke objek jendela yang ada.
CAxWindow::CreateControl
Membuat kontrol ActiveX, menginisialisasinya, dan menghostingnya di jendela yang ditentukan.
HRESULT CreateControl(
LPCOLESTR lpszName,
IStream* pStream = NULL,
IUnknown** ppUnkContainer = NULL);
HRESULT CreateControl(
DWORD dwResID,
IStream* pStream = NULL,
IUnknown** ppUnkContainer = NULL);
Parameter
lpszName
Penunjuk ke string untuk membuat kontrol. Harus diformat dengan salah satu cara berikut:
ProgID seperti
"MSCAL.Calendar.7"
CLSID seperti
"{8E27C92B-1264-101C-8A2F-040224009C02}"
URL seperti
"<https://www.microsoft.com>"
Referensi ke dokumen Aktif seperti
"file://\\\Documents\MyDoc.doc"
Fragmen HTML seperti
"MSHTML:\<HTML>\<BODY>This is a line of text\</BODY>\</HTML>"
Catatan
"MSHTML:"
harus mendahului fragmen HTML sehingga ditetapkan sebagai aliran MSHTML. Hanya ProgID dan CLSID yang didukung di platform Windows Mobile. Platform tersemat Windows CE, selain Windows Mobile dengan dukungan untuk CE IE mendukung semua jenis termasuk ProgID, CLSID, URL, referensi ke dokumen aktif, dan fragmen HTML.
pStream
[di] Penunjuk ke aliran yang digunakan untuk menginisialisasi properti kontrol. Bisa NULL.
ppUnkContainer
[out] Alamat pointer yang akan menerima IUnknown
kontainer. Bisa NULL.
dwResID
ID sumber daya sumber daya HTML. Kontrol WebBrowser akan dibuat dan dimuat dengan sumber daya yang ditentukan.
Tampilkan Nilai
Nilai HRESULT standar.
Keterangan
Jika versi kedua metode ini digunakan, kontrol HTML dibuat dan terikat ke sumber daya yang diidentifikasi oleh dwResID.
Metode ini memberi Anda hasil yang sama dengan memanggil:
AtlAxCreateControlEx(lpszName, hWnd, pStream, NULL, NULL, GUID_NULL, NULL);
Lihat CAxWindow2T::CreateControlLic untuk membuat, menginisialisasi, dan menghosting kontrol ActiveX berlisensi.
Contoh
Lihat Menghosting Kontrol ActiveX Menggunakan ATL AXHost untuk sampel yang menggunakan CreateControl
.
CAxWindow::CreateControlEx
Membuat kontrol ActiveX, menginisialisasinya, dan menghostingnya di jendela yang ditentukan.
HRESULT CreateControlEx(
LPCOLESTR lpszName,
IStream* pStream = NULL,
IUnknown** ppUnkContainer = NULL,
IUnknown** ppUnkControl = NULL,
REFIID iidSink = IID_NULL,
IUnknown* punkSink = NULL);
HRESULT CreateControlEx(
DWORD dwResID,
IStream* pStream = NULL,
IUnknown** ppUnkContainer = NULL,
IUnknown** ppUnkControl = NULL,
REFIID iidSink = IID_NULL,
IUnknown* punkSink = NULL);
Parameter
lpszName
Penunjuk ke string untuk membuat kontrol. Harus diformat dengan salah satu cara berikut:
ProgID seperti
"MSCAL.Calendar.7"
CLSID seperti
"{8E27C92B-1264-101C-8A2F-040224009C02}"
URL seperti
"<https://www.microsoft.com>"
Referensi ke dokumen Aktif seperti
"file://\\\Documents\MyDoc.doc"
Fragmen HTML seperti
"MSHTML:\<HTML>\<BODY>This is a line of text\</BODY>\</HTML>"
Catatan
"MSHTML:"
harus mendahului fragmen HTML sehingga ditetapkan sebagai aliran MSHTML. Hanya ProgID dan CLSID yang didukung di platform Windows Mobile. Platform tersemat Windows CE, selain Windows Mobile dengan dukungan untuk CE IE mendukung semua jenis termasuk ProgID, CLSID, URL, referensi ke dokumen aktif, dan fragmen HTML.
pStream
[di] Penunjuk ke aliran yang digunakan untuk menginisialisasi properti kontrol. Bisa NULL.
ppUnkContainer
[out] Alamat pointer yang akan menerima IUnknown
kontainer. Bisa NULL.
ppUnkControl
[out] Alamat pointer yang akan menerima IUnknown
kontrol. Bisa NULL.
iidSink
[di] Pengidentifikasi antarmuka antarmuka keluar pada objek yang terkandung. Bisa IID_NULL.
punkSink
[di] Penunjuk ke IUnknown
antarmuka objek sink yang akan disambungkan ke titik koneksi pada objek yang terkandung yang ditentukan oleh iidSink.
dwResID
[di] ID sumber daya sumber daya HTML. Kontrol WebBrowser akan dibuat dan dimuat dengan sumber daya yang ditentukan.
Tampilkan Nilai
Nilai HRESULT standar.
Keterangan
Metode ini mirip dengan CAxWindow::CreateControl, tetapi tidak seperti metode itu, CreateControlEx
juga memungkinkan Anda untuk menerima penunjuk antarmuka ke kontrol yang baru dibuat dan menyiapkan sink peristiwa untuk menerima peristiwa yang diaktifkan oleh kontrol.
Lihat CAxWindow2T::CreateControlLicEx untuk membuat, menginisialisasi, dan menghosting kontrol ActiveX berlisensi.
Contoh
Lihat Menghosting Kontrol ActiveX Menggunakan ATL AXHost untuk sampel yang menggunakan CreateControlEx
.
CAxWindow::GetWndClassName
Mengambil nama kelas jendela.
static LPCTSTR GetWndClassName();
Tampilkan Nilai
Penunjuk ke string yang berisi nama kelas jendela yang dapat menghosting kontrol ActiveX nonlisensi.
CAxWindow::operator =
Menetapkan HWND ke objek yang ada CAxWindow
.
CAxWindow<TBase>& operator=(HWND hWnd);
Parameter
hWnd
Handel ke jendela yang ada.
Tampilkan Nilai
Mengembalikan referensi ke objek saat ini CAxWindow
.
CAxWindow::QueryControl
Mengambil antarmuka kontrol yang dihosting yang ditentukan.
HRESULT QueryControl(REFIID iid, void** ppUnk);
template <class Q>
HRESULT QueryControl(Q** ppUnk);
Parameter
iid
[di] Menentukan IID antarmuka kontrol.
ppUnk
[out] Penunjuk ke antarmuka kontrol. Dalam versi templat metode ini, tidak perlu ID referensi selama antarmuka yang ditik dengan UUID terkait diteruskan.
Q
[di] Antarmuka yang sedang dikueri.
Tampilkan Nilai
Nilai HRESULT standar.
CAxWindow::QueryHost
Mengembalikan antarmuka host yang ditentukan.
HRESULT QueryHost(REFIID iid, void** ppUnk);
template <class Q>
HRESULT QueryHost(Q** ppUnk);
Parameter
iid
[di] Menentukan IID antarmuka kontrol.
ppUnk
[out] Penunjuk ke antarmuka pada host. Dalam versi templat metode ini, tidak perlu ID referensi selama antarmuka yang ditik dengan UUID terkait diteruskan.
Q
[di] Antarmuka yang sedang dikueri.
Tampilkan Nilai
Nilai HRESULT standar.
Keterangan
Antarmuka host memungkinkan akses ke fungsionalitas yang mendasar dari kode hosting jendela, yang diimplementasikan oleh AxWin
.
CAxWindow::SetExternalDispatch
Mengatur antarmuka pengiriman eksternal untuk CAxWindow
objek.
HRESULT SetExternalDispatch(IDispatch* pDisp);
Parameter
pDisp
[di] Penunjuk ke IDispatch
antarmuka.
Tampilkan Nilai
Nilai HRESULT standar.
CAxWindow::SetExternalUIHandler
Mengatur antarmuka IDocHostUIHandlerDispatch eksternal untuk CAxWindow
objek.
HRESULT SetExternalUIHandler(IDocHostUIHandlerDispatch* pUIHandler);
Parameter
pUIHandler
[di] Penunjuk ke IDocHostUIHandlerDispatch
antarmuka.
Tampilkan Nilai
Nilai HRESULT standar.
Keterangan
Antarmuka eksternal IDocHostUIHandlerDispatch
digunakan oleh kontrol yang mengkueri situs host untuk IDocHostUIHandlerDispatch
antarmuka. Kontrol WebBrowser adalah salah satu kontrol yang melakukan ini.
Lihat juga
Sampel ATLCON
Kelas CWindow
Dasar-Dasar Kontrol Komposit
Gambaran Umum Kelas
Tanya Jawab Umum Kontainer Kontrol