我有一个包含一个向导页面的向导对话框。对于不同的屏幕分辨率,向导页面的显示方式有所不同。如果在笔记本电脑或台式机中以不同的屏幕分辨率执行向导页,则会丢失某些向导页内容。
我在对话框中设置了向导页面大小:
dialog.setPageSize(700,700);
但是,尽管这不能正常工作。请让我知道有什么方法可以使向导页面随屏幕分辨率的变化而调整。
提前致谢。
最佳答案
在您的WizardPage
中,您可以使用以下方式重置对话框的大小以匹配内容的首选大小:
private void recalcSize()
{
Composite dialogAreaComp = (Composite)getControl();
Shell shell = getShell();
Point shellSize = shell.getSize();
dialogAreaComp.layout(true, true);
Point newSize = shell.computeSize(SWT.DEFAULT, SWT.DEFAULT, true);
if (newSize.x != shellSize.x || newSize.y != shellSize.y)
shell.setSize(newSize);
}
在页面的
recalcSize
方法中调用setVisible
。