java - 如何让 ScrolledComposite 中包含 FlowLayout 的 Composite 垂直而不是水平增长?

标签 java swt composite flowlayout scrolledcomposite

我正在尝试在 ScrolledComposite 中创建一个包含 FlowLayout 的 Composite,以便该 Composite 从 ScrolledComposite 继承其宽度,但高度会动态增长。我搜索了一些片段,但没有让它们发挥作用;我只能让它增加宽度,这是不希望的。

我想做的是创建一个包含一堆缩略图的 View ,以填充窗口/周围复合 Material 的宽度并滚动高度。

最佳答案

您将需要重写复合 Material 的computeSize方法,或FillLayout以始终报告给定的widthHint,除非宽度提示可能小于单个缩略图的宽度,在这种情况下您可能希望显示水平滚动。

您还可以向 ScrollComposite 添加调整大小监听器,并继续调用 ScrollComposite#setMinSize() 以确保内部复合 Material 仅垂直增长。

您在 FillLayout 上使用的类型是否正确?

关于java - 如何让 ScrolledComposite 中包含 FlowLayout 的 Composite 垂直而不是水平增长?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15264006/

相关文章:

java - 使用java仅添加一个值的列表对象

java - 让 SWT 浏览器将其输出呈现为图像

java - SWT - 标题区域对话框

php - 使用 SplObjectStorage 序列化对象树时出错

java - 复合模式: Client treats collections of objects and individual objects uniformly

java - 用显式等待替换隐式等待(selenium webdriver 和 java)

java - 如何在 Linux 中使用 -vm 参数在 Eclipse RCP 产品的 Config.ini 文件中设置类路径

asp.net-mvc-3 - asp.NET MVC 3 复合模式模型绑定(bind)

java - 如何提高Java读取大文件的速度?

java - 将像素从一张图像复制到另一张图像