1

我是 JOGL 和 SWT 的业余爱好者。我在尝试使用 AbsoluteLayout 在 GLCanvas 上显示一些 SWT 小部件时遇到问题。

composite = new Composite(parent, SWT.NONE);
composite.setLayout(null);
Button button = new Button(composite, SWT.NONE);
button.setText("New Button");
button.setBounds(172, 145, 94, 28);
glcanvas = GLCanvas.create(composite, SWT.NO_BACKGROUND, null, null, null);

我认为按钮应该在 GLCanvas 之上,但它总是在 GLCanvas 之后。难道我做错了什么 ?请帮助我,非常感谢。

4

2 回答 2

0

Have you tried:

composite = new Composite(parent, SWT.NONE);
composite.setLayout(null);
glcanvas = GLCanvas.create(composite, SWT.NO_BACKGROUND, null, null, null);
Button button = new Button(composite, SWT.NONE);
button.setText("New Button");
button.setBounds(172, 145, 94, 28);

(Moving the glcanvas = GLCanvas... upwards to before creating the button)

Unless I'm missing something you're adding the button and then the canvas on top of it.

于 2013-07-04T03:05:26.993 回答
0

目前,这个问题没有解决方案。有关更多详细信息,此问题仅在 MacOS 上发生,我已在 Windows 8 x64 下进行了测试,并且没有任何内容被覆盖。这是官方论坛上讨论的链接 http://forum.jogamp.org/How-to-overlay-SWT-Widgets-over-GLCanvas-td4029507.html

于 2013-07-05T10:55:36.460 回答