Вопрос

Я не могу найти какой-либо способ сделать вкладку невидимой или иным образом скрытой в приложении SWT/JFace. Я хочу, чтобы вторая вкладка была доступна (или нет) на основе некоторых других предпочтений, установленных пользователем.

Разобраться в этом не должно быть так сложно!

Это было полезно?

Решение

Единственный известный мне способ — это удалить CTabItem для вкладки, которую вы хотите скрыть, а затем создать новый CTabItem, когда вы захотите его отобразить.Вроде,

 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);

Если вы хотите скрыть вкладку посередине, вам придется воссоздать все вкладки после той, которую вы удалили.Вероятно, проще всего создать класс, содержащий элемент управления и поле, которое можно использовать для переключения видимости.Затем вы можете просто разместить все CTabItems и воссоздать их заново, если поле видимости истинно.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top