我目前正在開發Office擴展,並且在某一點上有一些麻煩。 我在OpenOffice Writer選項卡中設置了3個文本框。 我現在要獲取用戶輸入到這些字段中的文本。Open Office Extension從設置頁面獲取文本字段的值
我嘗試這樣做:
XControl textfield2 = _xControlCont.getControl("TextField2");
XTextComponent username = (XTextComponent) UnoRuntime.queryInterface(XTextComponent.class, textfield2);
passwd = password.getText();
我得到一個空指針異常右一開始,我覺得現在的問題是,這種代碼我不能得到文本字段的值時Optionspage未打開。
我正在運行有點相同的代碼在一個單獨的類,我測試如果所有輸入的值是正確的,如果你可以連接到我們的服務器。 我試圖用getter方法從那裏獲取代碼,但這並沒有工作。
這裏是一個例子:
@Override
public void actionPerformed(ActionEvent actionEvent) {
boolean testConnection = false;
XControl label = _xControlCont.getControl("Label4");
XFixedText xLabel = (XFixedText) UnoRuntime.queryInterface(XFixedText.class, label);
XControl textfield2 = _xControlCont.getControl("TextField2");
XTextComponent username = (XTextComponent) UnoRuntime.queryInterface(XTextComponent.class, textfield2);
user = username.getText();}
然後超出該方法我使用吸氣劑的。 這是我得到的異常:
在org.openoffice.demo.DocumentUpload.run(DocumentUpload.java:56)異常的線程 「主題-15」 顯示java.lang.NullPointerException
我希望你們其中一位能幫助我。
如果我理解正確,這段代碼工作:'passwd = password.getText();'。請將代碼發佈到發生問題的位置。還有什麼是錯誤信息或不正確的行爲?請參閱http://stackoverflow.com/help/how-to-ask。 –
增加了例外。 – FreeKill
請發佈完整的異常消息,以顯示發生錯誤的位置。另外'_xControlCont'定義在哪裏?也許它沒有一個名爲「TextField2」的控件。如果可能,編寫一個顯示問題的[MCVE](http://stackoverflow.com/help/mcve)。 –