5

ある状況で見せTextFieldたいものがあります。Tooltip

チェックを実行した後、次のコードを実行します。

textFieldUsername.setTooltip(new Tooltip("Enter username!"));
textFieldUsername.getTooltip().setAutoHide(true);
textFieldUsername.getTooltip().show(textFieldUsername, 1, 1);

したがって、誰かが空のユーザー名でログインしようとするとTooltip、「ユーザー名」を介してプロンプトが表示されますTextField

しかし、アクションになるTooltipと、画面の左上隅にポップアップが表示されます。

シーンの座標を計算TextFieldしてから、それらに座標を追加する必要がありますか、それとも、の呼び出しからこれらの1, 1引数を位置show()に相対するように設定する方法がありTextFieldますか?

4

1 に答える 1

12

座標は常に画面を基準にしていると思います。コンポーネントの座標を計算するには、シーンとウィンドウの座標を組み込む必要があります。

Point2D p = label.localToScene(0.0, 0.0);
label.getTooltip().show(label,
        p.getX() + label.getScene().getX() + label.getScene().getWindow().getX(),
        p.getY() + label.getScene().getY() + label.getScene().getWindow().getY());
于 2012-10-24T16:24:34.523 に答える