[英]How to disable a shell without disabling minimize, maximize and close button in SWT
我正在嘗試使用以下方式禁用SWT中的外殼
sell.setEnabled(false);
這工作正常,我想阻止用戶執行操作,但是與此同時,我希望允許他最小化外殼。 問題在於setEnabled(false)
將禁用整個外殼。
你能對此有個想法嗎?
我猜您想禁用外殼程序的內容。 那么,為什么不只是在容器中添加一個容器(復合)作為主要內容並根據需要禁用/啟用它呢? 這不會影響外殼,因此,最小化按鈕將繼續起作用。
final Shell shell = new Shell(display);
shell.setLayout(new FillLayout());
final Composite composite = new Composite(shell, SWT.NONE);
composite.setEnabled(false);
而不是禁用命令行管理程序本身,而是禁用它包含的控件。 像這樣:
Control[] children = shell.getChildren();
for( Control control : children ) {
control.setEnabled( false );
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.