私はGridLayoutを内部に持つJpanelを持っています。今度はPaintComponentで円を描画する別のJpanelを内部に追加しました。私は今、パネルのComponentCountその()を取得しようとしているが、それは失敗します。これは、マウスのトラッキングのための私のコードはS:Java getComponentCountが正しい値(常にゼロ)を返しません
public void mousePressed(MouseEvent me) {
int click_x = me.getX();
int click_y = me.getY();
int col = click_x/100;
int row = click_y/100;
System.out.println("select_C:"+col+" select_Y:"+row);
System.out.println("COMPONENT COUNT:"+positionPanels[col][row].getComponentCount());
}
それは大丈夫ですが、私はGridLayoutの(1で(JPanelのをコンテナをクリックすると、 1))は実際に別のコンポーネント(JPANEL)を含み、コンポーネントカウントとしてゼロを返します。あなたたちは私を助けることを願って、スクリーンショットに...のSystem.out出力を参照してください...赤い円がゼロに戻っクリックし、...
詳細はスクリーンショットを参照してください。
ありがとう
本当ですか? JpanelでpaintComponentを使用しています...代わりにJLabelを使用することをお勧めしますか? (コンポーネントなので...)、スイングを使用することも義務的です。n –
JPanelは確かにコンポーネントです。私はあなたがこのパネルに円を描いたのでgetComponentCountが1を返すと予想したという印象を受けました。そうでない場合は、コードを教えてください。見えないコードはデバッグできません。 –
はい私は本当に1を返すと期待していましたが、0を返し続けます...どのコード部分が必要ですか? –