gpt4 book ai didi

java - Eclipse 插件 View - 如何动态添加和处置复合 Material

转载 作者:行者123 更新时间:2023-12-02 03:52:55 25 4
gpt4 key购买 nike

用例很简单:

在滚动组合中,我有一个下拉菜单,当我从中选择一个项目时,多个 ChartComposites 会在下面的网格布局中生成。

然后,我再次选择下拉列表,单击另一个项目,所有先前生成的复合 Material 都会被处理,并且 View 会填充新的复合 Material 。

现在了解更多详细信息:

下拉列表和图表组合都包含在常规组合中(因为我只能将一个 Composite 设置为 ScrolledComposite)它具有网格布局,因为我希望它们以某种方式排列。

问题是我不知道如何在创建 View 后调用 createPartControl() 来处理我不再需要的复合 Material 并创建新的复合 Material 。

我尝试使用内容提供程序,但我认为它不适用于预制复合 Material ,因为结果是它应该返回的 ChartComposites 被转换为对象并且不再......图表。

我考虑过使用 StackLayout,但我确实需要当前拥有的 GridLayout,所以这不起作用。

那么,有谁知道一种快速、简单的方法来通过监听器处理复合 Material 并将其添加到已创建的 View (选择下拉项、按下按钮等)?

最佳答案

您可以使用 StackLayoutGridLayout 来实现此目的,而不必使用 dispose

从你的问题中并不清楚 GUI 设计到底是什么。以下代码堆叠多个复合子项:

Composite parent = new Composite(body, SWT.NONE);
parent.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
StackLayout layout = new StackLayout();
parent.setLayout(layout);

Composite child1 = new Composite(parent, SWT.NONE);
child1.setLayout(new GridLayout());
// TODO .... add controls to child1 for first 'page'

Composite child2 = new Composite(parent, SWT.NONE);
child2.setLayout(new GridLayout());
// TODO .... add controls to child2 for second 'page'

layout.topControl = child;
layout.layout();

关于java - Eclipse 插件 View - 如何动态添加和处置复合 Material ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35723214/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com