tlw1985 / cnpack

Automatically exported from code.google.com/p/cnpack
0 stars 0 forks source link

挂接BDS下的页面切换事件以处理编辑器工具栏等的可见性 #2

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
目前在BDS下,窗体设计器可以和编辑器一样嵌入到窗体中,��
�致编辑器工具栏等难以区
分嵌入的设计器与代码编辑器,从而难以处理是否应该显示��
�目前采用的法子是启用
Timer定期检测最顶上一个alClient的Visible的东西是否是编辑器控
件,是则表示当前
是编辑器,从而决定显示。但这种机制导致对CPU的耗费比较��
�重,不是个效率高的法
子。
另外,即使处理EditControlWrapper提供的ctView事件也不行。
目前能想到的法子是,想法挂接页面的切换事件,在事件中��
�断当前最顶上一个
alClient的Visible的东西是否是编辑器控件,是则调整是否显示��
�可行性有待研究。

Original issue reported on code.google.com by liuxiao....@gmail.com on 29 May 2009 at 12:47

GoogleCodeExporter commented 8 years ago
经分析,应该可挂接此BPL中的输出事件:
000BFC38 5355 1447 __fastcall 
Editorform::TEditWindow::TabsChanged(System::TObject *)

Original comment by liuxiao....@gmail.com on 30 May 2009 at 12:07

GoogleCodeExporter commented 8 years ago
经过检查,不光是挂接此TabsChanged,还需要挂接另一
Editorform::TEditWindow::ViewBarChange以处理这种通知,已完成。

Original comment by liuxiao....@gmail.com on 15 Jun 2009 at 1:58