คลาCButtonแสดงการทำงานของตัวควบคุมปุ่ม Windows ตัวควบคุมปุ่มเป็นหน้าต่างขนาดเล็ก สี่เหลี่ยมลูกที่สามารถสามารถคลิกเปิด และปิด และปุ่มสามารถใช้คนเดียว หรือ เป็นกลุ่มก็มีป้าย หรือปรากฏขึ้น โดยไม่มีข้อความ ปุ่มมักจะเปลี่ยนลักษณะที่ปรากฏเมื่อผู้ใช้คลิ?
โดยทั่วไปปุ่มได้กล่องกาเครื่องหมาย ปุ่ม และ pushbutton วัตถุCButtonสามารถกลายเป็นสิ่งเหล่านี้ ตามไปปุ่มลักษณะระบุเวลาการเตรียมใช้งาน โดยสมาชิกสร้างฟังก์ชัน?
นอกจากนี้ คลาCBitmapButtonมาจากCButtonสนับสนุนสร้างปุ่มควบคุมติดป้ายชื่อ ด้วยรูปภาพบิตแมปแทนข้อความ การCBitmapButtonสามารถมีบิตแมปที่แยกต่างหากสำหรับปุ่มของอัพ ลง อเมริกาโฟกัส และปิดการใช้งาน?
คุณสามารถสร้างตัวควบคุมปุ่ม จากต้นแบบการโต้ตอบ หรือ ในรหัสของคุณได้โดยตรง ในทั้งสองกรณี แรกเรียกการกำหนดCButtonเพื่อสร้างวัตถุCButton แล้ว เรียกใช้ฟังก์ชันสมาชิกสร้างเพื่อสร้างตัวควบคุมปุ่ม Windows และแนบไปยังวัตถุCButton?
ก่อสร้างได้กระบวนการขั้นตอนเดียวในคลาสที่ได้รับมาจากCButton เขียนพารามิเตอร์การเรียนได้รับ และเรียกสร้างจากภายในที่กำหนด?
ถ้าคุณต้องการจัดการข้อความแจ้งเตือนของ Windows ถูกส่ง โดยตัวควบคุมปุ่มเพื่อของแม่ (มักจะเป็นคลามาจากCDialog), เพิ่มข้อความแผนผังรายการและข้อความจัดการสมาชิกฟังก์ชันคลาหลักสำหรับแต่ละข้อความ?
แต่ละรายการของข้อความแผนที่ใช้แบบฟอร์มต่อไปนี้:
ON_(แจ้งรหัส memberFxn)
โดยที่รหัสระบุ ID หน้าต่างลูกของตัวควบคุมที่ส่งการแจ้งเตือนและmemberFxnคือชื่อของฟังก์ชันสมาชิกหลักคุณได้เขียนเพื่อจัดการการแจ้งเตือน?
แบบตัวอย่างฟังก์ชันของผู้ปกครองจะเป็นดังนี้:
afx_msg โมฆะ memberFxn( );
อาจเกิดข้อความแผนผังรายการมีดังนี้:
แผนผังรายการ | ส่งไปยัง parent เมื่อ... |
ON_BN_CLICKED | ผู้ใช้คลิกปุ่ม? |
ON_BN_DOUBLECLICKED | ผู้ใช้ดับเบิลคลิกปุ่ม? |
ถ้าคุณสร้างวัตถุCButtonจากทรัพยากรการโต้ตอบ วัตถุCButtonได้โดยอัตโนมัติทำลายเมื่อผู้ใช้ปิดกล่องโต้ตอบ?
ถ้าคุณสร้างวัตถุCButtonภายในหน้าต่าง คุณอาจจะทำลายมัน ถ้าคุณสร้างวัตถุCButtonในกอง โดยใช้ฟังก์ชันใหม่คุณต้องเรียกลบบนวัตถุที่จะทำลายเมื่อผู้ใช้ปิดตัวควบคุมปุ่ม Windows ถ้าคุณสร้างวัตถุCButtonในกองซ้อน หรือมีฝังหลักโต้ตอบวัตถุ จะถูกทำลายโดยอัตโนมัติ?
#รวม lt;afxwin.h>
สมาชิกของคลาส|nbsp คลาสพื้นฐาน| แผนภูมิของลำดับชั้น(&N)
ดูเพิ่มเติมnbspCWnd, CComboBox, CEdit, CListBox, CScrollBar, CStatic, CBitmapButton, CDialog(&N)