JavaSWT-调整大小后重新绘制画布

JavaSWT-调整大小后重新绘制画布,java,canvas,swt,Java,Canvas,Swt,我有一个包含画布的shell,画布反过来在其PaintListener中绘制一些文本。问题是,当我使用setBounds方法动态地减小shell的大小时(这将每隔一段时间发生一次),文本不会被重新绘制。事实上,canvas的PaintListener不会再次被调用 有没有办法强制重画?我尝试调用canvas.redraw(),但这不起作用。嗯,似乎我没有在shell上设置布局。设置FillLayout后,它会工作。您应该接受正确的答案(按绿色勾号),以便用户看到答案已被回答

我有一个包含画布的shell,画布反过来在其PaintListener中绘制一些文本。问题是,当我使用setBounds方法动态地减小shell的大小时(这将每隔一段时间发生一次),文本不会被重新绘制。事实上,canvas的PaintListener不会再次被调用


有没有办法强制重画?我尝试调用canvas.redraw(),但这不起作用。

嗯,似乎我没有在shell上设置布局。设置FillLayout后,它会工作。

您应该接受正确的答案(按绿色勾号),以便用户看到答案已被回答