gpt4 book ai didi

delphi - 如何测试控件是否为 RichEdit 控件

转载 作者:行者123 更新时间:2023-12-02 13:16:51 25 4
gpt4 key购买 nike

Delphi 中的大多数 TWinControl 后代都有一个重写方法 CreateParams 来定义它的子类,例如:'EDIT'、'COMBOBOX'、'BUTTON'、'RICHEDIT' 等。

CreateSubClass(Params, 'EDIT');
CreateSubClass(Params, 'COMBOBOX');
CreateSubClass(Params, 'BUTTON');

Delphi 有相当多的富编辑控件,包括来自第三方供应商的控件。所有这些控件都是 RichEdit 的子类。

我想知道是否有一种方法可以通过测试 CreateParams 中定义的子类来测试控件是否为 RichEdit,无论其原始供应商如何?

最佳答案

使用 Win32 API GetClassName()RealGetWindowClass()函数(请参阅 What makes RealGetWindowClass so much more real than GetClassName? 了解它们之间的差异),然后检查可用的各种 RichEdit 类名称的结果:

  • 'RICHEDIT' (1.0)
  • 'RICHEDIT20A''RICHEDIT20W' (2.x+)
  • 'RICHEDIT50W' (4.1)
  • 'TRichEdit'(VCL 包装器)
  • 其他第三方包装器依此类推

关于delphi - 如何测试控件是否为 RichEdit 控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2294962/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com