用于显示托盘的 MFC ActiveX 控件






4.20/5 (2投票s)
一个用于显示托盘和样品的 MFC ActiveX 控制,具有选择和挑选属性。
引言
我最近需要开发一个 ActiveX 控制,用于在化学应用中显示托盘和样品(意料之中!)。该控制需要能够显示任何尺寸 x*y 的托盘,具有列标题;允许样品插入和挑选。一旦 ActiveX 控制被注册,它在您自己的项目中就非常容易使用。在 Visual Studio 中,您可以使用 项目->添加项目->组件和控件 将控制添加到您的应用程序中,转到 ActiveX 控制 并查找 TrayControl 控制。将其插入到您的项目中,将为您创建一个包装类。然后,您应该能够从资源编辑器中将控件拖动到对话框和窗体中。一些更有趣的功能包括:
EnableDoubleBuffering()这使得控制使用内存 DC(Kieth Rules 类,略有修改),因此控制不会闪烁。EnableCherryPicking()允许用户使用鼠标选择位置,拖动选择等。SetShowInsertionPoint()允许用户查看和移动控制中的下一个位置插入点。SetShowCellTitles当鼠标经过某个单元格时,将显示给定单元格位置中样品的名称。该控制本身可以触发以下事件:FireControlClicked当用户左键单击控制时。如果用户单击了特定的单元格,则报告该位置,否则为 -1。FireCherryPicked用户执行了挑选操作,或者更改了单元格的挑选状态。FireInsertionPointChanged使用箭头键或双击单元格更改了下一个样本的插入点。FireControlRightClicked用户右键单击了控制。如果用户在特定单元格上执行了此操作,则给出单元格位置,否则为 -1。
还有许多其他功能可用。
希望您喜欢使用这个控制。
致谢
Keith Rule - MemDC 类
Ales Krajnc - ColorNames 颜色 https://codeproject.org.cn/gdi/colornames.asp