1

NetBeansのGUIエディタを使用して、NetBeansサイトで提案されているように、背景画像をラベルのアイコンとして設定し、ラベルとボタンを中央に配置して、単純なJFrameを作成しています。ヌルレイアウトを使用せず、ピクセルを中央に配置するように設定せずに、中央に配置するのに非常に苦労していました。背景として800X600の画像があり、ウィンドウのサイズを変更したくありません。そのため、プロパティでサイズ変更可能のチェックを外し、[コード]タブでデザイナーサイズを800、600に設定し、サイズを生成するをオンにすると、フォームサイズが自動的に816、638に設定されます。これにより、左右の境界線が表示されます。数ピクセルの側面。フォームサイズを800、600に変更すると、背景画像が数ピクセル切り取られます。影響を与える可能性のあるもう1つの設定は、プロパティ=>境界を800、600、800、600に設定します。

ウィンドウのサイズを変更せずに境界線を削除する方法や、別のレイアウトが中央揃えに役立つかどうかについてのアドバイスをいただければ幸いです。グリッドバッグのレイアウトが役立つ情報をいくつか見つけましたが、正しく機能させることができませんでした。GUIエディターを使用する代わりにコードを書き出すこともより良い代替手段かもしれないと思いますが、私はかなり新しいので、それに関するアドバイスも素晴らしいでしょう。

4

1 に答える 1

1

正しいレイアウトまたはレイアウトの組み合わせを使用する場合、コンポーネントを非常に簡単に中央に配置できる場合は、ヌルレイアウトを使用しないでください。たとえば、JButtonの横にJLabelが必要で、それらをJPanelの中​​央に配置する場合は、最初にJLabelとJButtonを独自のJPanelに配置し(このJPanelの不透明なプロパティがfalseに設定されていることを確認してください)、次に含まれるJPanelにGridBagLayoutを使用させます。 。GridBagConstraintsなしで1つのコンポーネント(内部JPanel)を追加すると、含まれているJPanelのサイズが変更されても、コンポーネントは自動的に中央に配置されます。これはほとんどばかげた証拠ですが、nullレイアウトは、保守が難しいコードのレシピです。

于 2012-07-13T01:52:33.510 に答える