最近、自分が働いている会社のプログラムを作り始めました。背景情報と同じように、私はまだ学生であり、初心者のプログラマーなので、私の解決策はおそらく推奨されておらず、他の方法でそれを行う方法がわかりませんでしたが、それは機能し、それについて判断されることはありません。プログラミングとはまったく関係のない学生の仕事です。
プログラムの重要な点は、画面サイズと解像度(800x600以上)が異なる複数の異なるコンピューターで実行されることです。プログラムの一部を失うことなく画面のできるだけ多くを占めるようにするために、レイアウトをnullに設定し、相対値を使用してすべてをハードコーディングしました。
プログラムはキオスクスタイルで、最初に画面サイズの値を取得してそこから移動します(たとえば、頭のてっぺんから左側のメニューが画面の8分の1、上部のバーが2%になるなど)。 。また、フォントメトリックを使用して、コンポーネントのサイズが正しく、すべてが適切に表示されることを確認します。
私の質問は、レイアウトマネージャーを使用する代わりにレイアウトをnullにすることがなぜそんなに嫌われるのかということです。(これは恐ろしいやり方だといくつかのフォーラムで言われました)私はレイアウトマネージャーがどのように機能し、さまざまなレイアウトを使用する方法を知っていますが、このプログラムの要件(複数の異なる解像度、カスタムボタンの形状と配置) 、言語を変更するとコンポーネントのテキストが変更されるなど)、レイアウトマネージャーを使用してすべてを行うことはできませんでした。
このような状況で、経験豊富なプログラマーはどのようにレイアウトマネージャーを使用しますか?また、ボタンを特定の場所に配置し、他のコンポーネントを特定の場所に配置して、事前定義されたレイアウトのいずれにも実際には一致させない場合はどうしますか?