JFrame を拡張するクラス AgentHome があります。AgentHome には JPanel rem_panel があります。チェックボックスは、テキストボックスによって表示されるテキストが読み取られるデータベーステーブル内のエントリの数に応じて、rem_panel…チェックボックスの数に動的に追加されます。
AgentHome には整数変数 x とチェックボックス arraylist rem_cbarr があります。
rem_cbarr は、チェックボックスが作成されて rem_panel に追加されると、チェックボックスを保存します。プログラムの実行時に変数 x が 1 に設定されている場合、これらのチェックボックスの背景色を赤に設定しようとしています。変数 x が 1 に設定されているかどうかを確認するために、JADE フレームワークの TickerBehaviour を実装しました。
チェックボックスの背景色を赤に設定できません。これは私が実装したコードです。助けてください。ありがとう。
public void setup()
{
Behaviour loop = new TickerBehaviour( this, 2000 )
{
protected void onTick() {
timer();
}
};
addBehaviour( loop );
}
public void timer()
{
AgentHome hm=new AgentHome();
if(hm.x==1)
{
for (int i = hm.rem_cbarr.size()-1; i>=0; i--)
{
JCheckBox cb=hm.rem_cbarr.get(i);
cb.setBackground(Color.red);
hm.rem_panel.revalidate();
hm.rem_panel.repaint();
}
}
}