Napisao sam program u kojoj glavna klasa nasledjuje JFrame. Evo bitnih delova:
class Auction extends JFrame implements ActionListener {
U initAuctionBoard() postavljam UI: Kreiram glavni panel na koji postavljam dva panela. Na jednom od ova dva panela postavljam labele za cije title izvlacim artikle iz baze sa trenutnim cenama i dugmad za bidovanje istih (posto je u pitanju online aukcija). Na drugom panelu je par inputa za login mada ovo nije bitno. Zatim glavni panel dodam na frame sa add(pnl);
E sad u actionPerform() sam obradio bidovanje, korisnik unosi cenu za artikal koji je kliknuo i to prosledjujem drugoj klasi koja updateuje bazu.
I to lepo radi i jos samo treba da prikazem novo stanje na ekranu. To sam uradio tako sto sam actionPerform() metod zavrsio sa pozivom initAuctionBoard().
Medjutim na ekranu se nista ne menja, i dalje prikazuje staro stanje.
ovo mi je main method:
public static void main(String args[]) {
Auction mainFrame = new Auction();
mainFrame.setSize(700, 700);
mainFrame.setTitle("Auction");
mainFrame.setVisible(true);
}
Prvo sam pomislio da je zbog toga sto je setVisible() smesten u mainu, pa sam ga izmestio u initAuctionBoard, naravno zamenivsi mainFrame sa this. Medjutim iznenadio sam se da kad sam startovao program, pokazao se potpuno prazan frame???
Molio bih nekoga ko zna da objasni sta se desava i kako da postignem da se novonastalo stanje prikaze. Nadam se da sam dovoljno objasnio problem. Ako treba poslacu jos koda.