2013-11-15 8 views
6

スイングコンポーネントに複数のツールチップメッセージを追加します。基本的な解決策は、次のようなhtmlタグを使用することです:htmlタグを使用して、最大幅が固定されたjava、multilineツールチップ

label.setToolTipText("<html><p width=\"350px\">" + text + "</p></html>"); 

長いテキストでうまくいきます。しかし、テキストに単語が1つしか含まれていない場合は、350pxの幅と空きスペースが多く設定されます。


setToolTipText()メソッドで正しく動作する最大幅のための特別なHTMLのプロパティがありますか? 私は次の解決方法を試してみましたが、それは動作しません:

"<p style=\"max-width: 350px\">" 

私はピクセル単位でテキスト幅を計算し、350ピクセルよりも幅が小さい場合<p>タグを開いて変更する必要がありますか?

+0

を、 あなたは解決策を見つけたことがありますか? –

答えて

-2

私は次のことを示唆している:

固定幅を設定した後、あなたが使用して適切なサイズを得ることができます:ferrerverckこんにちは

Dimension d = someToolTip.getPreferredSize(); 
if (d.width < 350) { 

    // Insert code to make tooltip-size smaller, by setting it to d.width; 

} 
+0

こんにちはルーク、少なくとも部分的なソリューションを添付する場合、あなたの考えは意味をなさないでしょう。例えば。私の場合の好ましいサイズは固定サイズと同じ値を返しますが、それはずっと小さくすることができます。 あなたは他の何かを意味しているか、最初にチェックすることなくアイデアを提案しただけです。 –

+0

ツールチップを望むように設定し、getPreferredSize()で現在のサイズを取得し、サイズを小さくしたい場合に備えてそのサイズを設定します。そのため、最大値を設定する代わりに手動で幅を変更してください。 – Luke

関連する問題