2011-09-14 12 views
1

私は、WindowsとMacの両方で実行する必要があるJavaクライアントがあるプロジェクトで作業しています。一番上に検索ボックスがありますが、これはWindowsでは正しく表示されますが、Macintoshでは正しく表示されません。また、カーソルがどのように正しく表示されないかを見ることができます。Mac上で動作するJavaアプリケーションで境界線を指定する方法を教えてください。

これがなぜ起こっているのかを試してみると、何か助けてください。

enter image description here

enter image description here

+3

あなたはこの検索ボックスの作成やレイアウト方法を示すいくつかのコード:あなたの要件はアプリにアプリから異なる場合があります:)

を通常は)...(主要な公共の静的な無効に(呼び出すことによってNumbusを有効にすることができます – jfpoilpret

+3

あなたのコードのどこかに問題がある可能性があります。レイアウト上の問題ですが、投稿した情報が限られているため、誰がどこを知っているのでしょうか? –

答えて

2

私は示唆しているいずれかのフォントサイズを減らすか、ボックス内のテキストに対応するために、ボックスを高くするために。

また、GUIがネイティブに見える必要がない場合は、NIMBUSのルックアンドフィールを有効にすることもできます(Java 6u14から考えます)。私はアプリケーションがOS間で同じように見えることが重要なアプリケーションを作成しました。それは、そのアプリケーションがそのOS上のネイティブアプリのように見えるということです。

try { 
     for (UIManager.LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) { 
      if ("Nimbus".equals(info.getName())) { 
       UIManager.setLookAndFeel(info.getClassName()); 
       break; 
      } 
     } 
    } catch (Exception e) { 
     // If Nimbus is not available, you can set the GUI to another look and feel. 
    } 
+0

乾杯、再構成現在のOSに応じて作成されたパネルですが、ちょっと面倒ですが動作します。 – Ollie

+1

もっと簡単な方法は、レイアウトマネージャにコンポーネントの推奨サイズを使用させることです。 – trashgod

関連する問題