在JPanel中嵌入HWND(窗口句柄)
我正在尝试在JPanel中嵌入HWND(窗口句柄)。
实际上,我可以将HWND嵌入到JFrame中,但是嵌入式窗口始终位于其他组件的顶部,因此无法移动它。如果尝试删除我的JFrame的所有子组件,则HWND将保留在那里。HWND似乎是在JFrame顶部绘制的,而不是其中之一。
要将HWND嵌入到JPanel中,我通过jna使用User32:
User32.SetParent(iage.getRenderHwnd(), (int) getGUIHwnd(j));
我用它来获取我的JFrame的HWND:
j.getPeer() != null ? ((WComponentPeer) j.getPeer()).getHWnd(): 0;
有没有一种方法可以将HWND嵌入到JPanel或将其添加到其他组件中,这样就可以像在用户界面中一样定位它了?
谢谢
回答:
JPanels是轻量级的组件(它们没有真正的本机对等体)。也就是说,它们已经使用(J)Frame的句柄。看一下java.awt.Canvas。
以上是 在JPanel中嵌入HWND(窗口句柄) 的全部内容, 来源链接: utcz.com/qa/415834.html