0

我有一个显示视图的 Eclipse 插件。我想要做的是在视图中的一行中显示 n 个图像,每个图像下都有一个居中的标签。我想查看可滚动。 我还希望在视图的尺寸(ScrolledComposite?Composite?)发生变化时重新调整每个图像的大小,以便它利用可用的垂直和水平客户区。

我在 createViewPart 方法中实现了以下内容(省略了声明和错误检查):

    公共无效createPartControl(复合父){

        ScrolledComposite myScrolledComposite = 新的 ScrolledComposite(父级,
        SWT.H_SCROLL | SWT.V_SCROLL | SWT.边界);

        myComposite = new Composite(myScrolledComposite, SWT.NONE);

        myScrolledComposite.setContent(myComposite);
    }

从现在开始,最好的方法是什么?

  1. 我是否应该将 Composite 子类化并让该类在其自身上绘制给定的图像并在图像下方居中放置一个标签?
  2. 我应该使用什么布局管理器将标签置于图像下方?
  3. 我的子类的“父”参数应该是“myComposite”吗?
  4. 我应该将哪个布局管理器与“myComposite”一起使用?
  5. 在调整图像大小时,我是否使用“myComposite”的getBounds(我的子类复合材料的getBounds)来计算可用的宽度和高度?

感谢你的协助。

4

1 回答 1

0

我建议你看看Eclipse Nebula 项目提供的 Gallery 小部件,也许你可以使用它,或者至少从他们如何实现它中获得一些想法。

于 2009-05-29T15:41:19.733 回答