2016-11-18 5 views
0

私はNetbeans 8.1を2台のコンピュータに持っています。同じJDK。フォーム/ペイン/パネルを構築するとき、ラベルのようなSwingコントロールのフォントのデフォルトサイズは異なります。 1つのプロパティにはTahoma 11プレーンがあり、もう1つにはTahoma 13プレーンがあります。また、メニューバーのサイズも異なります。両方のpcを使ってアプリケーションをビルドすると、起動時のサイジングによって、スクロールバーが表示されます。ラベルサイズとテキストも変更されます。NetbeansのSwingコントロールのデフォルトフォントサイズを変更する

Netbeansがフォントとコントロールのサイズに使用するものを設定する方法はありますか?両方を同じにすることはできますか?私は、ツール、オプション、フォント&の色を設定することによって行われるエディタのテキスト領域でフォントサイズについて話しているわけではありません。

これは、PCの別のビデオチップセットと関係がありますか?

誰もこの問題を以前に見たことがありますか?

チームが異なるPCにアプリケーションを構築していた場合の結果はどうなりますか?

また、問題のPCを使用して終了する必要がありますか?

私は十分な質問をしましたか? ;-)

+2

[* Java Layout Mangersを使用する目的は何ですか?*](http://stackoverflow.com/q/37800301/230513)。 – trashgod

+0

これには[UIManager](https://docs.oracle.com/javase/8/docs/api/javax/swing/UIManager.html)を使用できます。 'UIManager.getDefaults()。keys()'はあなたにすべてのキーを与え、それをループして 'UIManager.get(key)'キーの値を取得し、値がFontUIResource ' if(value instanceof FontUIResource){//ここにフォントを設定} ' – Chains

+0

ありがとう、みんな。基本的にNetbeansを使用する場合、プロジェクトGUIは1台のPC上に構築する必要があります。 Netbeansを使用しない場合、レイアウトマネージャ(Freeまたはgroup)は、アプリケーションがUIManagerに「コンサルテーション」してフォントを設定し、コントロールがインスタンス化されたときにサイジングするときに、.jarが実行される場所と同じサイズになります。それは、アプリを実行しているときに、どのPCのどのユーザーでも同じことをする唯一の方法です。 –

答えて

0

なぜ私は異なるサイジングを得ているのか分かりました。私はWin7コンピュータの1つに大きなワイドスクリーンモニタを持っています。そして、ずっと前にDPIを120(125%)に設定しました。これによりNetbeansとJavaは異なるサイズで動作します。 DPIを96に戻すと、問題は解決されます。特に、96 DPI(別のWin7 PC)で開発されたものは、120 DPIでこのPC上で動作し、エッジが短くなります。結果の右端と下端のSwingコントロールは、アプリケーションのスクロールバーでカバーされます。

96DPIを使用しているときに、ctrl-scrollwheelトリックを使用してテキストとアイコンの一部を拡大することができますが、大きなものが必要な人にとってはこれは単なる回避策です。少なくともNetbeansでは、エディタテキストの設定が可能です。

NetbeansとJavaが開発して優先DPIを設定して実行するといいですね。私のLinux PCに関しては、それが私が思いつくことができる唯一の答えだろう。

ありがとうございます。

関連する問題