4

簡単に言えば、JMenu.setHorizo​​ntalAligment(SwingConstants.CENTER) は何もせず、テキストは左揃えのままです (Windows LAF を使用)。

メニュー ヘッダー (JMenuItem ではなく、JMenus 自体) にテキストを配置する方法はありますか?

私はJDK1.7を使用しています。

現在、JMenus を含む JMenuBar は次のようになっています。

JMenus を持つ現在の JMenuBar (および単一の JMenuItem

4

3 に答える 3

1

私がこれを行う場合、あなたは言われたためにマージンを設定しようとしましたか?JMenu

JMenu optionsMenu = new JMenu("Option");
optionsMenu.setMargin(new Insets(5, 50, 5, 5));

これは私が得る出力です:

マージン出力

メッセンジャー画像

于 2012-07-30T05:12:28.297 に答える
1

setHorizo​​ntalTextPosition(SwingConstants.CENTER);を試してください。続いてinvalidate();

于 2012-07-29T20:39:40.673 に答える
1

CSSメニュー内のテキストを配置してスタイルを設定するのに使用しました。下部のサンプル画像の中央にテキストを配置するために使用されますstyle="text-align:center;"CSS私の場合、JMenuタイトルを<p>段落タグでカプセル化しました。

clientFilter = new JMenu("<html><p style='text-align:center;'>Client</p></html>");
siteFilter = new JMenu("<html><p style='text-align:center;'>Site</p></html>");
employeeFilter = new JMenu("<html><p style='text-align:center;'>Employee</p></html>");
jobtypeFilter = new JMenu("<html><p style='text-align:center;'>Job Type</p></html>");

これは次のようになります。

ここに画像の説明を入力

上の画像width:90px;color:blue;では style 属性も使用していますが、簡単にするために上のコード例からこれら 2 つのスタイルを削除したことに注意してください。お役に立てれば。

この回答は、多かれ少なかれ私の元の回答hereのコピーです。

于 2014-03-06T09:32:20.703 に答える