[英]How to enable scroll when CheckboxTableViewer inside a ScrolledComposite is disabled?
我在ScrolledComposite內部有一個CheckboxTableViewer。 我必須基於另一個復選框按鈕啟用或禁用所有tableItems。 為此,我正在使用
CheckboxTableViewer.getTable().setEnabled(false).
在上述情況下,ScrolledComposite也與表一起禁用。 但是我希望即使禁用CheckboxTableViewer(禁用了able中的所有項目),滾動行為也可以照常工作。
禁用時,無法使表格控件顯示滾動條。 這只是本機控件的工作方式,即OS呈現控件的方式。
但是,您可以將Table控件包裝在ScrolledComposite中。 這樣,ScrolledComposite將滾動而不是Table。
這是我所做的代碼:
table.setEnabled(false);
Composite composite = table.getParent();
if ((null != composite) && (composite instanceof ScrolledComposite)) {
ScrolledComposite scrolledComposite = (ScrolledComposite)composite;
scrolledComposite.setMinSize(table.computeSize(SWT.DEFAULT, SWT.DEFAULT));
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.