سؤال

لا يمكنني العثور على أي طريقة لإجراء علامة تبويب غير مرئية أو مخفية بطريقة أخرى في تطبيق 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);

إذا كنت ترغب في إخفاء علامة تبويب في الوسط، فستحتاج إلى إعادة إنشاء جميع علامات التبويب بعد التخلص منها .. من المحتمل أن تكون أسهل إذا قمت بإنشاء فئة تحمل عنصر التحكم وحقل يمكن استخدامه لتبديل الرؤية. ثم يمكنك فقط Dipose جميع CTABITEMS وإعادة إنشاء حقل الرؤية صحيحا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top