- ベストアンサー
JEditorPaneでwebページを表示
JEditorPaneを使ってwebページを表示させて いるのですが、コンボボックスの選択したアドレスのwebページの表示はできるのですが、検索エンジンを 使って検索してもまったく反応がありません。 何か他のコードを書きたさなければならないのでしょうか? ------------------------------------ JEditorPane html = new JEditorPane(); String[] choise ={"http://news.goo.ne.jp/", "http://www.google.co.jp/","http://www.excite.co.jp/", "http://headlines.yahoo.co.jp/hl",}; JComboBox cb = new JComboBox(choise); html.addHyperlinkListener(this); html.setContentType("text/html"); html.setEditable(false); cb.setEditable(true); public void actionPerformed(ActionEvent e) { try { html.setPage((String)cb.getSelectedItem()); } catch(Exception err) { JOptionPane.showMessageDialog( this,"読み込みエラーが発生しました", "エラー", JOptionPane.ERROR_MESSAGE); } } public void hyperlinkUpdate(HyperlinkEvent e) { if (e.getEventType() != HyperlinkEvent.EventType.ACTIVATED) return; String url = e.getURL().toString(); try { html.setPage(url); } catch(Exception err) { } ---------------------------------------
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
検索エンジンのWebページがJavaScriptを使用しているからでしょう。 JEditorPaneに表示したWebページでJavaScriptを動かすことは できません。
その他の回答 (1)
- pcbeginner
- ベストアンサー率46% (261/560)
swingにはうといのでアドバイスです。 ・hyperlinkUpdateメソッドが呼ばれているかどうか ・e.getEventType()の戻りがHyperlinkEvent.EventType.ACTIVATED以外なっていてreturnされていないか ・String url = e.getURL().toString();の値はどうなっているか などを確認してみるといいかもしれません。 以下は余談ですが、 前にまったく同じタイトルの質問をしていますよね? でも内容は全然違いますよね? 「タイトル」は「質問を要約したもの」であることが望ましいです。 他の人が質問者さんと同じ(もしくは似た)状況になって調べようとしてもタイトルだけじゃ区別つきませんよね?
お礼
>前にまったく同じタイトルの質問をしていますよね 投稿した後に自分の過去にした質問タイトルと似ていたのを見てあぁ~~と思ったんですが(泣 以後気おつけます!! ご指摘ありがとうございました!
お礼
>JavaScriptを動かすことはできません。 なっば¥なるほど、今JavaScriptのサンプルとか 載せているサイトで確認しました。 確かにJavaScriptのページは無理みたいですね。 変わりにJavaScriptを使ってない検索エンジンを 見つけましたのでそれを使うことにします! ありがとうございました☆