Events 为什么在ScrollPanel中,scroll是通过处理程序处理的,而resize是通过覆盖的方法处理的?

Events 为什么在ScrollPanel中,scroll是通过处理程序处理的,而resize是通过覆盖的方法处理的?,events,gwt,resize,scroll,Events,Gwt,Resize,Scroll,为什么GWT设计成这样?调整大小和滚动事件之间的主要区别是什么?因为与滚动事件相反,浏览器中没有调整大小的事件(在窗口级别调整大小,但在元素级别不调整大小) 因此,在GWT中调整“通知”大小是“模拟”的:如果您使用RootLayoutPanel或ResizeLayoutPanel,它将侦听窗口调整大小事件,并将它们向下传播到其RequiresResize子项(如果它们是ProvideResize小部件本身,则也会向下传播)。 显式设置providesize小部件的大小也将通知其RequiresR

为什么GWT设计成这样?调整大小和滚动事件之间的主要区别是什么?

因为与滚动事件相反,浏览器中没有调整大小的事件(在窗口级别调整大小,但在元素级别不调整大小)

因此,在GWT中调整“通知”大小是“模拟”的:如果您使用
RootLayoutPanel
ResizeLayoutPanel
,它将侦听窗口调整大小事件,并将它们向下传播到其
RequiresResize
子项(如果它们是
ProvideResize
小部件本身,则也会向下传播)。
显式设置
providesize
小部件的大小也将通知其
RequiresResize
子部件;以及调整布局面板区域的大小(对于
DockLayoutPanel
LayoutPanel
——以及其他——以编程方式进行),和/或由用户对
SplitLayoutPanel
StackLayoutPanel
执行)


您会注意到,
ScrollPanel
既是一个
RequiresResize
(将由其父
ProvidesResize
小部件通知其大小可能已更改)又是一个
ProvidesResize
(如果它是
RequiresResize
,将通知其子部件)。

因为浏览器中没有调整大小的事件(与滚动事件相反,可以在窗口级别调整大小,但不能在元素级别调整大小)

因此,在GWT中调整“通知”大小是“模拟”的:如果您使用
RootLayoutPanel
ResizeLayoutPanel
,它将侦听窗口调整大小事件,并将它们向下传播到其
RequiresResize
子项(如果它们是
ProvideResize
小部件本身,则也会向下传播)。
显式设置
providesize
小部件的大小还将通知其
RequiresResize
子部件;以及调整布局面板区域的大小(以编程方式用于
DockLayoutPanel
LayoutPanel
,和/或由用户用于
SplitLayoutPanel
StackLayoutPanel

您会注意到,
ScrollPanel
既是一个
RequiresResize
(将由其父
ProvidesResize
小部件通知其大小可能已更改)又是一个
ProvidesResize
(如果它是
RequiresResize
,将通知其子部件)