ホームページ >Java >&#&チュートリアル >Java GridLayout 内の要素の X インデックスと Y インデックスを効率的に取得するにはどうすればよいですか?

Java GridLayout 内の要素の X インデックスと Y インデックスを効率的に取得するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-19 21:21:09500ブラウズ

How Can I Efficiently Retrieve the X and Y Indexes of Elements in a Java GridLayout?

GridLayout 内の要素の X インデックスと Y インデックスの取得

Java では、GridLayout 内の特定の要素の X/Y インデックスを見つけるには、詳細なメソッドを使用します。二次元配列を手動で反復するよりも効率的なアプローチです。次のメソッドは、グリッド座標に基づいてボタン参照を取得する方法を示しています。

private JButton getGridButton(int r, int c) {
    int index = r * N + c;
    return list.get(index);
}

このメソッドは行 r と列 c をパラメータとして受け取り、基になるボタンのリスト (リスト) のインデックスを計算します。そのインデックスの要素にアクセスすることで、対応するボタン参照を取得します。

これを示すために、次のコードは 5x5 ボタンのグリッドを作成し、各ボタンにクリック リスナーを追加します。ボタンがクリックされると、クリック リスナーは、見つかったボタン参照と元のボタン参照を比較して、その同一性を検証します。

private JButton createGridButton(final int row, final int col) {
    final JButton b = new JButton("r" + row + ",c" + col);
    b.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {
            JButton gb = GridButtonPanel.this.getGridButton(row, col);
            System.out.println("r" + row + ",c" + col
                + " " + (b == gb)
                + " " + (b.equals(gb)));
        }
    });
    return b;
}

このメソッドを利用することで、任意のボタンの X インデックスと Y インデックスを効率的に取得できます。 GridLayout 内で、特定のグリッド要素に対してさまざまなアクションを簡単に実行できるようになります。

以上がJava GridLayout 内の要素の X インデックスと Y インデックスを効率的に取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。