Frage

Ich kann kein Verfahren zur Herstellung einer Registerkarte unsichtbar oder anderweitig versteckte in einer SWT / JFace Anwendung finden --- Ich mag ein zweites Register (oder nicht) zur Verfügung steht, basierend auf einigen anderen Präferenzen vom Benutzer festgelegt.

Es sollte nicht so schwer sein, dies herauszufinden!

War es hilfreich?

Lösung

Die einzige Möglichkeit, die ich kenne, ist die CTabItem für die Registerkarte, die Sie ausblenden möchten zu entsorgen und dann eine neue CTabItem erstellen, wenn Sie es zeigen möchten. Sort,

 CTabFolder folder = new CTabFolder(parent, SWT.NONE);
 Label label = new Label(folder, SWT.NONE);
 label.setText("Hello");
 CTabItem item = new CTabItem(folder);
 item.setControl(label);
 // Hide it
 item.dipose();
 // show it again
 CTabItem item = new CTabItem(folder);
 item.setControl(label);

Wenn Sie eine Registerkarte in der Mitte verbergen möchten, müssen Sie müssen alle Registerkarten nach einem neu erstellen Sie entsorgt .. Es ist wahrscheinlich am einfachsten, wenn Sie eine Klasse erstellen, die die Steuerung und ein Feld enthält, das Umschalten verwendet werden kann, die Sichtbarkeit. Dann können Sie einfach alle CTabItems dipose und neu iff die Sichtbarkeit Feld wahr ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top