簡體   English   中英

Eclipse RCP,SWT,JFace:如何創建僅對視圖(而不是整個shell)模態的對話框?

[英]Eclipse RCP, SWT, JFace: How to create a dialog that is modal only to a view (not the entire shell)?

反正有沒有創建一個視圖模態的對話框而不是整個shell(應用程序)? 所以如果說,我有一個名為A的視圖覆蓋了另一個名為B的視圖,我想打開一個只能模態查看A的對話框,所以當我切換到視圖B時,對話框和視圖A將被覆蓋鑒於B.無論如何我能做到這一點,即使這不是通常的做法嗎?

謝謝!

我認為實施起來並不容易。 一種可能性是,不使用View A中的模態對話框,而是使用TabFolder。 然后,您可以在新選項卡中打開對話框的內容,並強制此選項卡保持在最頂層,直到您將其關閉為止。 這與您需要的行為類似。

這也允許您將視圖B中的內容拖放到視圖A中。

工作台恢復的整個想法是將工作台恢復到以前的狀態。 它不必恢復每個細節,但如果您不想將視圖留空,則應將其恢復到原始狀態。 這意味着應該使用與關閉工作台時相同的輸入來恢復視圖B. 如果在視圖A關閉后視圖B及其輸入繼續存在,則無論視圖A是否存在,都可以恢復視圖B及其輸入。 在工作台還原期間,您當然不應該打開對話框。 這不是一個好的UI設計。 Eclipse提供了一個非常易於使用的memento框架,可以保存視圖的輸入。 用它。

如果您不熟悉紀念品,請參閱http://wiki.eclipse.org/FAQ_How_does_a_view_persist_its_state_between_sessions%3F

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM