每次加载页面中的任何对象时,似乎都会发送webViewDidFinishLoad消息.有没有办法确定所有内容加载都已完成?
我有一个扩展JPanel的类.在它的构造函数中,我将传递this给其他方法,主要是将jpanel对象添加为jpanel(以及其他对象)中的容器/控件的侦听器.由于Netbeans leaking this in constructor对这些调用显示警告,我将它们放在从构造函数调用的其他方法中.
之前:
class Foo ... {
public Foo() {
initComponents();
tabX.addChangeListener(this); // <- netbeans complains here
}
Run Code Online (Sandbox Code Playgroud)
后:
class Foo ... {
public Foo() {
initComponents();
initListeners();
}
protected void initListeners() {
tabX.addChangeListener(this);
}
Run Code Online (Sandbox Code Playgroud)
这摆脱了症状.但我怀疑它解决了netbeans显示警告的原因.
在JPanel派生类中进行这种初始化的适当位置在哪里?
我得到一个设备实例路径,例如
L"\\\\?\\USB#VID_0403&PID_6001#6&2cc2d230&0&2#{219d0508-57a8-4ff5-97a1-bd86587c6c7e}"
Run Code Online (Sandbox Code Playgroud)
来自IWDFRemoteInterfaceInitialize::RetrieveSymbolicLink。
但对于CM_Get_Parent我需要设备的 DEVINST/DWORD 这让我发疯。
我试过例如
instancePath = L"\\\\?\\USB#VID_0403&PID_6001#6&2cc2d230&0&2#{219d0508-57a8-4ff5-97a1-bd86587c6c7e}";
HDEVINFO hinfo = SetupDiGetClassDevs(NULL, instancePath, NULL, DIGCF_DEVICEINTERFACE | DIGCF_ALLCLASSES);
Run Code Online (Sandbox Code Playgroud)
和其他一些SetupDi...巫毒没有成功。非常感谢任何帮助,因为 - 正如所提到的 - 我现在几个小时都无法解决这种疯狂问题,尽管有数十个相反的示例(devid->实例路径),但我还没有找到任何实例路径->DEVINST。