【发布时间】:2018-06-02 15:56:50
【问题描述】:
我们正在 Windows 中构建 JavaFX 应用程序。
我尝试使用与 java.awt.panel 一起使用的 JNA Native.getComponentPointer() 方法,但我无法找到使用 javafx.scene.layout.Pane 的好方法
有谁知道任何方法可以为窗格获取 hWnd 吗?
【问题讨论】:
-
有吗? AWT 使用本机 OS 库来绘制组件,因此每个 AWT 组件都是 Windows 组件(在 Windows 上),但我认为 JavaFX 绘制自己的组件而不依赖底层工具包...
-
@sillyfly 据我所知,这是正确的。这正是 JavaFX 能够在实际呈现方式方面提供如此多自定义的原因。如果这是由原生组件完成的,那么 CSS 之类的东西就无法正常工作。
-
JavaFX 节点在窗口中呈现。 Windows OS 系统上的所有窗口都有一个
hWnd,由本机Windows 工具包使用。但它不会通过任何公共 API 直接公开。 -
@yeyb 我正在努力解决同样的问题。您是否找到了解决此问题或使用 JavaFX 和 JNA 的其他方式的解决方案?