3

无论如何要创建一个对视图而不是整个外壳(应用程序)模态的对话框?因此,如果说,我有一个名为 A 的视图覆盖了另一个名为 B 的视图,我想打开一个仅对视图 A 模态的对话框,因此当我切换到视图 B 时,对话框和视图 A 将被覆盖观点 B. 有没有我可以做到这一点,即使这不是正常的做法?

谢谢!

4

2 回答 2

3

我认为实施起来不会那么容易。一种可能性是,您使用 TabFolder,而不是在视图 A 中使用模式对话框。然后,您可以在新选项卡中打开对话框的内容,并强制此选项卡保持在顶部,直到您将其关闭。这是与您需要的行为类似的行为。

这也将允许您将某些内容从视图 B 拖放到视图 A 中。

于 2009-04-29T05:05:01.877 回答
1

工作台恢复的整个想法是将工作台恢复到之前的状态。它不必恢复每个小细节,但如果您不想将视图留空,那么您应该将其恢复到原始状态。这意味着视图 B 应该使用与关闭工作台时相同的输入来恢复。如果在视图 A 关闭后视图 B 及其输入继续存在,则无论视图 A 是否存在,视图 B 及其输入都可以恢复。您当然不应该在工作台还原期间打开对话框。那不会是好的 UI 设计。Eclipse 提供了一个非常易于使用的 memento 框架,可以保存视图的输入。用它。

如果您不熟悉纪念品,请参阅例如http://wiki.eclipse.org/FAQ_How_does_a_view_persist_its_state_between_sessions%3F

于 2009-05-07T04:25:45.993 回答