I want to get element position and width.
I tried this codes but it throws an exception, my os is windows xp and
xulrunner is 1.8.1.3 and swt is 3.448. Thank you.

nsIDOMElement elem = (nsIDOMElement) node.queryInterface(
nsIDOMElement.NS_IDOMELEMENT_IID); //it works.  node is a nsIDOMNode
nsIDOMNSHTMLElement domnshtmlElement =
(nsIDOMNSHTMLElement)node.queryInterface(nsIDOMNSHTMLElement.NS_IDOMNSHTMLELEMENT_IID);
//it throws an exception
//nsIDOMNSHTMLElement domnshtmlElement =
(nsIDOMNSHTMLElement)elem.queryInterface(nsIDOMNSHTMLElement.NS_IDOMNSHTMLELEMENT_IID);
//also fail to work
System.out.println("left:" +domnshtmlElement.getClientLeft());
System.out.println("top:" +domnshtmlElement.getClientTop());
System.out.println("width:" +domnshtmlElement.getClientWidth());
System.out.println("height:" +domnshtmlElement.getClientHeight());


Full printStack is:
Exception in thread "main" org.mozilla.xpcom.XPCOMException: The function
"QueryInterface" returned an error condition  (0x80004002)
    at org.mozilla.xpcom.internal.XPCOMJavaProxy.callXPCOMMethod(Native
Method)
    at
org.mozilla.xpcom.internal.XPCOMJavaProxy.invoke(XPCOMJavaProxy.java:143)
    at $Proxy4.queryInterface(Unknown Source)
    at test.LadyrBrowser$11.handleEvent(LadyrBrowser.java:354)
    at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
    at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
    at test.LadyrBrowser.<init>(LadyrBrowser.java:414)
    at test.LadyrBrowser.main(LadyrBrowser.java:512)
_______________________________________________
dev-embedding mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-embedding

Reply via email to