GWT 中的 TabPanel 和 TabLayoutPanel 有什么区别?我在 Google 中找不到答案,阅读文档也很难理解
2 回答
TabLayoutPanel
是一个布局面板:它是由外向内调整大小的,它必须被赋予明确的尺寸并在它们发生变化时得到通知(RequiresResize
),并且同样会调整其子项的大小并在这样做时通知他们(ProvidesResize
)。
TabPanel
不是; 它的大小是从内到外的:它会根据所选选项卡中小部件的大小自行调整大小。
除了托马斯所说的
在 GWT 中,要在屏幕中布局小部件,有两种面板:(Panels
例如:TabPanel)和Layout Panels
(例如:TabLayoutPanel)
面板或非布局面板
这些面板(TabPanel、DockPanel、Horizontal panel、Vertical Panel、AbsolutePanel ...)允许您以显式方式布局小部件。它将按照想象呈现小部件(提供正确的想象;))。当浏览器调整大小时,它的子小部件不会自动调整大小。
布局面板
这些面板(TabLayoutPanel、DockLayoutPanel、ScrollPanel、FlexTable、SplitLayoutPanel...)允许您以显式方式布局小部件,但还可以在浏览器调整大小时调整子小部件的大小,因为它们中的每一个都实现RequiresResize
和/或providesResize
提供您在整个过程中维护布局面板层次结构并以百分比形式提供面板和小部件的大小。
资料来源: GWT Docs 和 Personal Experience