ตัวควบคุม DHTML สามารถถูกโฮสต์อยู่ในคอนเทนเนอร์ เช่นการทดสอบคอนเทนเนอร์หรือ Internet Explorer คอนเทนเนอร์ที่โฮสต์การควบคุมการติดต่อสื่อสารกับตัวควบคุมที่ใช้อินเทอร์เฟซการควบคุมแบบปกติ DHTML ใช้อินเทอร์เฟซสำหรับการจัดส่งที่ลงท้าย ด้วย "UI" เพื่อสื่อสารกับรหัส c ++และทรัพยากร HTML ของคุณ ในการปรับเปลี่ยนตัวควบคุม DHTML ATLคุณสามารถฝึกเพิ่มวิธีการจะเรียก โดยอินเทอร์เฟซที่แตกต่างกันเหล่านี้?
เมื่อต้องการดูตัวอย่างของโทรศัพท์รหัส c ++จาก DHTMLสร้างตัวควบคุม DHTMLโดยใช้ตัวช่วยสร้างวัตถุ COM ATL และตรวจสอบรหัส ในส่วนหัวของแฟ้ม และแฟ้ม HTML?
ประกาศวิธี WebBrowser ในส่วนหัวของแฟ้ม
เมื่อต้องการเรียกใช้เมธอด c ++จาก DHTML UI คุณต้องเพิ่มวิธีการอินเทอร์เฟซของ UI ของตัวควบคุม ตัวอย่างเช่น ส่วนหัวของแฟ้มถูกสร้าง โดยตัวช่วยสร้างวัตถุ ATL ประกอบด้วยเมธอด c ++ OnClick ซึ่งเป็นสมาชิกของอินเทอร์เฟซ UI ของตัวควบคุมที่สร้างโดยตัวช่วยสร้าง?
ตรวจสอบ OnClick ในไฟล์.h ของตัวควบคุม:
STDMETHOD(OnClick) (IDispatch * pdispBody, VARIANT varColor)
พารามิเตอร์แรก pdispBody เป็นตัวชี้การอินเทอร์เฟซการสรุปข้อมูลของวัตถุร่างกาย พารามิเตอร์ตัวสอง varColor ระบุสีนำไปใช้กับตัวควบคุม?
โทรศัพท์รหัส c ++ในแฟ้ม HTML
หลังจากที่คุณได้ประกาศวิธีการ WebBrowser ในส่วนหัวของแฟ้ม คุณสามารถเรียกใช้วิธีการจากแฟ้ม HTML ข้อสังเกตในแฟ้ม HTML ที่ตัวช่วยสร้างวัตถุ ATL แทรกสามวิธีส่ง Windows: สาม OnClick วิธีที่ส่งข้อความการเปลี่ยนสีพื้นหลังของตัวควบคุม?
ตรวจสอบวิธีการต่าง ๆ ในแฟ้ม HTML หนึ่ง:
ltปุ่ม onclick='window.external.OnClick ร่าง (กาย "สีแดง");'> แดง < / ปุ่ม & gt
ในโค้ด HTML ข้างต้น วิธีการภายนอกหน้าต่าง OnClick เรียกว่าเป็นส่วนหนึ่งของแท็กปุ่ม วิธีการมีสองพารามิเตอร์: theBody ซึ่งอ้างอิงเนื้อหาของเอกสาร HTML และ "red" ซึ่งบ่งชี้ว่า สีพื้นหลังของตัวควบคุมจะถูกเปลี่ยนสีแดงเมื่อมีคลิกปุ่มการ Redต่อท้ายแท็กเป็นป้ายชื่อของปุ่ม?
ดูการแก้ไขตัวควบคุม DHTML ATLสำหรับข้อมูลเพิ่มเติมเกี่ยวกับการจัดเตรียมวิธีของคุณเอง ดูการระบุองค์ประกอบของโครงการควบคุม DHTMLสำหรับข้อมูลเพิ่มเติมเกี่ยวกับแฟ้ม HTML?