windows 什么是无窗口控件?

yi0zb3m4  于 7个月前  发布在  Windows
关注(0)|答案(4)|浏览(83)

在Windows下,它们被称为无窗口控件。

什么是无窗口控件,它有什么好处?

inb24sb2

inb24sb21#

无窗口控件是一个对象,它为您提供控件的行为,而不需要您创建窗口。
当您想要修改或扩展行为时,或者当您想要在创建窗口会很笨拙或困难的地方使用行为时,这很有用。
例如,你想在一个页面上嵌入数百个丰富的编辑控件,如果它们是每个窗口,那么每个窗口都必须获得焦点以获得用户输入,每个窗口都将单独绘制,等等。
但是如果你愿意跟踪无窗口控件的位置,并做一些你通常通过创建一个窗口(即路由键盘消息)免费获得的其他内务处理,那么你可以通过使用无窗口控件以更低的开销获得更好的结果。

jaql4c8m

jaql4c8m2#

Anon's是的。它是一个不需要底层窗口句柄的控件(HWND)。对这些控件的需求特别是在Web浏览器中出现的,因为每个进程的句柄上限为10,000。你可能会打开两个半复杂网页的标签,然后你会用完句柄。
使用,特别是滚动你自己的无窗口控件是很困难的,因为至少你需要重新创建它们的原始的,有时非常复杂和棘手的实现。

rkttyhzu

rkttyhzu4#

在我看来,无窗口控件可能使用更少sys资源,而且自定义更方便

相关问题