0

私はここで独特の問題を抱えています。PDA/電話での使用を目的とした RAP アプリケーションがありますが、小さなブラウザー ウィンドウに表示すると、フォーム上のすべてのテキスト ボックスが高すぎます (本来の高さの約 2 倍)。

コードをステップ実行しました (フォームは GridLayout を使用し、列数 = 1、列を等しくする = false)、ブラウザー ウィンドウが小さすぎる場合、TextSizeDetermination.getCharHeight() メソッドが正しくないフォント サイズを返すことがわかりました。ウィンドウが大きい場合は 13px、ウィンドウが小さすぎる場合は 26px (ちょうど 2 倍)。

興味深いことに、ウィンドウが小さすぎる場合、そのメソッドの probeStore.containsProbeResult(font) は true を返し、probeStore.getProbeResult(...).getSize().y をフォント サイズに使用するようです。それ以外の場合、ウィンドウが大きい場合は false を返し、TextSizeEstimation.getCharHeight(...) を使用します。

これを回避するためのポインタを1つか2つ持っている人はいますか?

適切なサイズのウィンドウを持つダイアログ:

代替テキスト http://70.38.7.140/tmp/Scr​​eenshot1.png

小さなウィンドウでのダイアログ:

代替テキスト http://70.38.7.140/tmp/Scr​​eenshot2.png

4

1 に答える 1

1

これは、RAP の TextSizeDetermination クラスのバグです。現在修正されています。

于 2010-02-16T21:20:19.760 に答える