na wstepie powiem ze jestem troche zielony z javy ale staram sie szuakc różnych rozwiązań.. niestety stanąłem w martwym punkcie:
stworzyłem sobie przykładową aplikacje która zawiera pole do wpisu ciągu znaków, przycisk i pole label x2... zadaniem programu ma byc odczyt znaków jakie zostana wpisane w textfilda i po nacisnieciu buttona wstawienie okreslonego napisu do pierwszego labela a obrazka/ki jpg do drugiego...
jak na razie zrobiłem to dla pierwszego znaku ale w koncowej wersji program ma odczytac kazdy znak i po kolei i zamieniac go na obrazek a nastepnie wyświetlać go w labelu np.
wpisze w pole 21+45= i po naciśnieciu buttona kazdy ze znaków czyli po kolei 2, 1,+,4,5,= zostanie wyswietlony w formie obrazka jpg...
to co do tej pory zrobiłem (na próbe dla 2 znaków + i - czy w ogóle działa) :
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.lang.String;
import javax.swing.*;
import javax.swing.ImageIcon;
public class Nazwa implements ActionListener
{
JButton but2;
JTextField fil3;
JLabel lab1;
JLabel lab2;
public Nazwa()
{
JFrame.setDefaultLookAndFeelDecorated(true); //skorki
JFrame fr= new JFrame ("zamiana ciągu znaków na obrazki");
Container con = fr.getContentPane();
con.setLayout(new GridLayout(4,1));
fil3 = new JTextField();
con.add(fil3);
but2 = new JButton("Show");
but2.addActionListener(this);
con.add(but2);
lab1 = new JLabel("x");
con.add(lab1);
fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
fr.pack();
fr.setSize(400,400);
fr.setLocationRelativeTo(null);
fr.setResizable(false);
fr.setVisible(true);
}
public void actionPerformed(ActionEvent ev)
{
String label = ev.getActionCommand();
if (label.equals("Show"))
{
try
{
String a = fil3.getText();
char znak = a.charAt(0);
switch(znak)
{
case '+': lab1.setText("dodawanie +");
lab2 = new JLabel(new ImageIcon("plus.jpg"),JLabel.CENTER);
break;
case '-': lab1.setText("minus -");
lab2 = new JLabel(new ImageIcon("minus.jpg"),JLabel.CENTER);
break;
};
}
catch (NumberFormatException e)
{
System.out.println("Blad argumentow!? Wpisz poprawne wartosci!");
}
}
}
public static void main(String args[]) throws IOException
{
Nazwa f = new Nazwa();
}
}
problem w tym ze napis do jednego labela jest wstawiany ale obrazek do drugiego juz nie...
czy moze ktos mi pomóc w realizacji tego podprogramu? jest to czesc wiekszej aplikacji ale ja mam sie zająć tylko tym... nie znam sie aż tak na javie a wszelkie pomysły chyba juz wyczerpałem...
z góry dziękuje za pomoc :)