Ich mache ein einfaches Konvertierungstool, um Dollar in Euro zu konvertieren und umgekehrt.So ändern Sie das Symbol in JLabel mit JButton
Der ganze Zweck ist nur zu experimentieren und lernen dieses coole Werkzeug, Java.
Ich habe ein JLabel an der Spitze mit einem Symbol eines Euro, um die Startwährung anzuzeigen. Ich habe einen Knopf darunter, den ich verwenden möchte, um dieses Symbol zu einem Dollar zu ändern.
Ich arbeite gerade mit einem ActionListener herum und probiere verschiedene Variationen von setIcon/setIconImage aus (bei jeder Iteration kann ich mir vorstellen, dass bisher noch nichts funktioniert hat).
public class MoneyConverter extends JFrame implements ActionListener{
//add label and icon showing base conversion currency
JLabel startcur = new JLabel("<--- Starting Curency", new ImageIcon("C:\\Users\\Russel\\Desktop\\1euro.gif"), SwingConstants.CENTER);
JButton euro = new JButton("Swap to Euro");
JButton dollar = new JButton("Swap to Dollar");
ich dann eine Methode
public MoneyConverter(){}
eingerichtet und fügen Sie alle meine Komponenten zu einem Raster-Layout und fügen Sie ActionLister in mein convert Tasten.
z.B.
dollar.addActionListener(this);
euro.addActionListener(this);
Nach dem üblichen Code (setVisible und die Gleichen, die ich deinetwegen nicht angegeben wird, wie ich es mit dieser stören nicht sehen, lassen Sie es mich wissen, wenn ich alles enthalten sollte)
public void ActionPerformed (ActionEvent e){
Object source = e.getSource();
if (source.equals(euro)){
startcur.setIcon(new ImageIcon("C:\\Users\\Russel\\Desktop\\1.gif"));
}
}
Dieser Teil wurde mehrmals geändert und ist der Hauptgrund für diesen Beitrag, wie ändere ich dieses Symbol in JLabel? - Ich werde auch den Umrechnungskurs hier einstellen, abhängig davon, ob Sie mit Dollar oder Euro beginnen. (Rate wird nicht tatsächliche Rate sein.)
Dies kann Ihnen helfen: http: // stackoverflow.com/questions/7966287/dynamically-change-jbutton-icon – PeterMmm
Sie könnten der 'actionPerformed'-Methode und innerhalb der' condition' eine 'print'-Anweisung hinzufügen, um zu sehen, ob die Methode aufgerufen wird und ob die Überprüfung korrekt ist. Ist die Methode wirklich "ActionPerformed" mit Kapital A? –
Ich werde kurz in Nebenläufigkeit und Threads schauen, damit ich die verknüpfte Frage verstehen kann, das war ein Nebenprojekt, um das anzuwenden, was ich getan habe, bevor ich blind weiterging und ich dachte, dass ich etwas Einfaches übersehen habe. Danke für die Antwort hoffentlich hilft, sobald ich mit Threads begonnen habe ... –