1
6
tbutton和tbitbtn仍然继续共享一个常见的onclick事件,因为它是从tcontrol级别一路向下实现的,并且一直都是这样。tbutton只是将受保护的tcontrol::onclick事件提升为published,然后tbitbtn将继承该事件。 在d2009中,tcustombutton和其他tcustom一样…类,不会将受保护成员从基类提升为已发布。tbutton和tbitbtn将受保护的tcontrol::onclick事件提升为单独发布。但事件本身仍然存在于tcontrol级别。 因为它在tcontrol级别受到保护,所以可以使用访问器类来访问它,即:
或者,对于任何通用的tcontrol指针:
一个更优雅的解决方案是使用rtti,它还允许您处理其他类型的对象,如tspeedbutton,它们有自己的onclick事件,即:
甚至:
|
2
1
如果这是Delphi,我建议在tcustombutton类中使用 是 和 作为 运营商:
C++只是很久以前的事了 顺便说一句,VCL有时不是包括在按钮、菜单等和调用代码之间提供单一接口的操作吗? |
relayman357 · 从函数修改TEdit对象属性 6 年前 |
Anthony Burg · 替换已弃用的发布功能 6 年前 |
AARMN · C++builder 10.1中表单的重新定义 7 年前 |
Peter · 重写VCL类/组件保护方法-如何编码和使用? 8 年前 |