JButtonがにImageIconsを追加した後、ボタンはもはや
は私がそれを提出する前に持っていた残り時間となるよう、私が試してみたかった、初期のプロジェクトを完成した作品はありません。プログラム全体が素晴らしく、JButtonはプログラムされたとおりに機能します。
ImageIconをJButtonに追加した後に何か問題が発生しました。私がするJButton初期化の数を示し、各ブロックの上の単一のコメントで、元を紹介します:
/**
* create child components
*/
private void initComponents() {
//normalSetupButton = new JButton("Normal Setup");
ImageIcon normalButtonImage = new ImageIcon("src/Images/normalIcon.png");
normalSetupButton = new JButton();
normalSetupButton.setIcon(normalButtonImage);
normalSetupButton.addActionListener(buttonHandler);
normalSetupButton.setToolTipText("Set up simulation for normal execution");
// queen test button
//queenTestButton = new JButton("Queen Test");
ImageIcon queenButtonImage = new ImageIcon("src/Images/yellowIcon.jpg");
queenTestButton = new JButton();
queenTestButton.setIcon(queenButtonImage);
queenTestButton.addActionListener(buttonHandler);
queenTestButton.setToolTipText("Set up to test Queen Lifespan or Food Levels");
// scout test button
//scoutTestButton = new JButton("Scout Test");
ImageIcon scoutButtonImage = new ImageIcon("src/Images/blueIcon.png");
scoutTestButton = new JButton();
scoutTestButton.setIcon(scoutButtonImage);
scoutTestButton.addActionListener(buttonHandler);
scoutTestButton.setToolTipText("Set up simulation for testing the Scout ant");
}
ボタン付きのみ違いはImageIconsは、テキストではなく、今があるということです。
私の問題は次のコードにあります。 ImageIconをButtonで初めて使用したのは初めてのことです。だから私はいつも "button.getText()。equals(" Button String ");"に慣れてきました。
public void actionPerformed(ActionEvent e) {
// get the button that was pressed
JButton b = (JButton) e.getSource();
// fire appropriate event
if (b.getText().equals("Normal Setup")) {
// set up for normal simulation
fireSimulationEvent(SimulationEvent.NORMAL_SETUP_EVENT);
} else if (b.getText().equals("Queen Test")) {
// set for testing the queen ant
fireSimulationEvent(SimulationEvent.QUEEN_TEST_EVENT);
} else if (b.getText().equals("Scout Test")) {
// set for testing the scout ant
fireSimulationEvent(SimulationEvent.SCOUT_TEST_EVENT);
} else if (b.getText().equals("Forager Test")) {
// set for testing the forager ant
fireSimulationEvent(SimulationEvent.FORAGER_TEST_EVENT);
} else if (b.getText().equals("Soldier Test")) {
// set for testing the soldier ant
fireSimulationEvent(SimulationEvent.SOLDIER_TEST_EVENT);
} else if (b.getText().equals("Run")) {
// run the simulation continuously
fireSimulationEvent(SimulationEvent.RUN_EVENT);
} else if (b.getText().equals("Step")) {
// run the simulation one turn at a time
fireSimulationEvent(SimulationEvent.STEP_EVENT);
} else if (b.getText().equals("Stop")) {
//stop everything
fireSimulationEvent(SimulationEvent.STOP_EVENT);
}
}
だから、Swing Gurusは、JButtonのImageIconに基づいてどのようにイベントを発生させますか?何か助けてくれてありがとう。これがうまくいかない場合は、平易なテキストだけで元のバージョンに戻してもよろしくお願いします。
注はい、画像がすべて同じ形式ではないことはわかります。彼らは最終的なイメージになることはありません。私はちょうどテストして、私が今見つけることができるどんな形式をつかんでいます。
([例] http://stackoverflow.com/questions/34863894/how-to-use-actionperformed-actionevent-e-with-more-that -one-button/34864401#34864401) – MadProgrammer