![]() |
1
4
使用调试器实际上很容易回答这个问题。你本可以自己做的。启用调试DCU并在
TMainPanel.CMControlListChange((45100, $22420EC, True, 0)) TControl.WndProc((45100, 35922156, 1, 0, 8428, 548, 1, 0, 0, 0)) TWinControl.WndProc((45100, 35922156, 1, 0, 8428, 548, 1, 0, 0, 0)) TWinControl.CMControlListChange((45100, 35922156, 1, 0, 8428, 548, 1, 0, 0, 0)) TControl.WndProc((45100, 35922156, 1, 0, 8428, 548, 1, 0, 0, 0)) TWinControl.WndProc((45100, 35922156, 1, 0, 8428, 548, 1, 0, 0, 0)) TControl.Perform(45100,35922156,1) TWinControl.InsertControl($22420EC) TControl.SetParent($2243DD4) TForm1.Button1Click(???)
此时,我们可以通过双击每个项来简单地检查调用堆栈。我会从
我们有两个问题
这就是谜题的答案。VCL将消息传播到父链上。然后,该调用将到达调用堆栈的顶部,
我知道我可以简单地指出
|
![]() |
relayman357 · 从函数修改TEdit对象属性 7 年前 |
![]() |
kevin · 串行通信Arduino C++Builder 7 年前 |
![]() |
WobblyBob · 鼠标光标下的标识组件不适用于TImage控件 7 年前 |
![]() |
DrWael · TPageControl:如何防止更改样式属性 8 年前 |
![]() |
Peter · 重写VCL类/组件保护方法-如何编码和使用? 9 年前 |