質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
JavaFX

JavaFXとは、Java仮想マシン上で動作するリッチインターネットアプリケーション (RIA) のGUIライブラリです。Swingとは異なり、FXMLと呼ばれる XMLとCSSを併用してデザインを記述します。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

2回答

2122閲覧

javafxのwebviewで横スクロールバーを出したい

imotaroun

総合スコア8

JavaFX

JavaFXとは、Java仮想マシン上で動作するリッチインターネットアプリケーション (RIA) のGUIライブラリです。Swingとは異なり、FXMLと呼ばれる XMLとCSSを併用してデザインを記述します。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

1グッド

0クリップ

投稿2020/03/14 10:06

javafxのwebviewコンポーネントでコンポーネントサイズを超えるページを表示しても
横スクロールバーが出てきません。

表示することは可能でしょうか。
有識者の方ご教授いただけると助かります。

s.k👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

WebViewをどのように配置しているのでしょうか。AnchorPaneの中?アンカーの設定は?それともHNox, Vboxのなか?なにをやったのかまったく提示されていませんので、質問からはまったくわかりませんね。

WebView

...WebViewにより、マウス・イベントと一部のキーボード・イベントが処理されて、スクロールが自動的に管理されるため、それをScrollPaneに配置する必要はありません。

ドキュメントは読まれましたよね。スクロールはWebViewが管理してくれるそうです。

まずは、もっとも単純な形で目的のページを表示してみてはどうでしょうか?

java

1import javafx.application.Application; 2import javafx.scene.Scene; 3import javafx.scene.web.WebView; 4import javafx.stage.Stage; 5 6public class xxWebView { 7 public static void main(final String[] args) throws Exception { 8 Application.launch(App.class, args); 9 } 10 11 public static class App extends Application { 12 @Override 13 public void start(final Stage stage) throws Exception { 14 final WebView webView = new WebView(); 15 webView.getEngine().load("https://teratail.com/questions/247090"); 16 stage.setScene(new Scene(webView)); 17 stage.show(); 18 } 19 } 20}

投稿2020/03/14 12:11

編集2020/03/14 23:38
shiketa

総合スコア4061

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

imotaroun

2020/03/14 22:17

ありがとうございます。 いただいたコードでは横スクロールバーが表示されました。 こちらで何が原因なのか条件を変えつつ試したところ、 htmlのコードをこのページのものに変更すると横スクロールバーが表示されることがわかりました。 元のhtmlも横方向で画面をはみ出すコンテンツサイズではあるのですが・・ さらなる検証をします。
shiketa

2020/03/14 23:46

アンカー云々と書いたのは、WebViewが実際に表示され見えているサイズよりも、レイアウト上では実は大きいからなのではないかと思うからです。WebViewが思っているサイズが大きいので、スクロールバーを表示する必要はないや、となっているのかも。表示しようとしているhtmlの問題なのかを判断するために、件の画面で https://teratail.com/questions/247090 を表示してみてもいいかもしれません。 わたしは、実際のところどんなふうにレイアウトされているのかを確認するために、scenic-view https://github.com/JonathanGiles/scenic-view を使うこともあります。
imotaroun

2020/03/15 00:12

わかりました! webview内のコンテンツで、 bulmaというCSSフレームワークをロードすると横スクロールバーが表示されなくなります。 さらなる検証を行ってもいいのですが、 仮で入れたライブラリだったのでこのタイミングで自作していく方向にします。 そこでも検証のタイミングがあることでしょう。 ありがとうございました。
guest

0

bulmaというCSSフレームワークをやめたら治りました。

投稿2020/05/03 02:22

imotaroun

総合スコア8

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問