私はJavaでカスタマイズされたルックアンドフィールを実装するいくつかのコードを維持しています。 (他の理由のために)Javaバージョンの最近のアップグレードを行っている間、私は、ルックアンドフィールは、これが密接BasicMenuItemUI.layoutMenuItem()
年頃のJava 6u02(基づいているクラスであるため、Javaルックアンドフィール - sun.swing.SwingUtilities2への依存を解除する方法
sun.swing.SwingUtilities2.BASICMENUITEMUI_MAX_TEXT_OFFSET;
に見つからないフィールドに破ったことがわかりましたhere's the source)。私は、オラクルがコードを再入力して、私が使用している新しいターゲット・バージョンであるJava 6u31にMenuItemLayoutHelper
を含めることを発見しました。
私はちょうどMenuItemLayoutHelper
を使うことができましたが、次回Java内部が変更されるまで問題を解決しません。したがって、これを解決策として割り引いています。
BasicMenuItemUI
に似た、左から右へのレイアウトを達成する方法については、親の最大テキストオフセット(sun.swing.SwingUtilitiesの悪い依存関係を削除する)を知る必要はありません。
おそらく、その依存関係を導入した人をつかむためのオプションではなく、すべてが固定されるまで彼女を部屋に閉じ込めることができます:-)その日の終わりに、 .. c&p、ehh、私は太陽のコードを見て、リファクタリング版を実装することを意味します。 – kleopatra
@kleopatra私のお母さんは私に警告しなかった** "太陽を見て"。彼女は "コード"とは言いませんでした。 –
これは、ビルドタイムコードの標準化のためのポスターの子です。 – Gus