Natknąłem się na pewien problem. W formularzu istnieją 3 TextField'y, które są pokazywane po kliknięciu na przycisk "więcej". Niestety jak nie próbowałem, to nie pokazują się. Zostają pokazane dopiero po zmianie przez użytkownika rozmiaru appletu.
Przeszedłem więc do prostego przykładu z ukrywaniem i pokazywaniem przycisków. Po kliknięciu na przycisk 1 pojawić ma się przycisk 2.
package zajecia2;
import java.applet.Applet;
import java.awt.Button;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BoxLayout;
public class test extends Applet implements ActionListener
{
Button b1;
Button b2;
@Override
public void destroy() {
// TODO Auto-generated method stub
super.destroy();
}
@Override
public void init() {
// TODO Auto-generated method stub
super.init();
b1=new Button("lipa");
b1.addActionListener(this);
b2=new Button("ala");
this.setLayout(new BoxLayout(this,BoxLayout.X_AXIS));
this.add(b1);
b2.setVisible(false);
this.add(b2);
this.setVisible(true);
}
@Override
public void start() {
// TODO Auto-generated method stub
super.start();
}
@Override
public void stop() {
// TODO Auto-generated method stub
super.stop();
}
@Override
public void paint(Graphics g) {
// TODO Auto-generated method stub
super.paint(g);
}
public void actionPerformed(ActionEvent e)
{
b2.setVisible(true);
repaint();
}
}
Efekt jest dokładnie taki sam jak w przypadku zadania szerszego. Przycisk pojawia się dopiero po akcji użytkownika z zewnątrz. Próbowałem już ukrywać cały aplet i chować. ustawiać "focus" na pokazywany obiekt i kilka innych. Pomysły mi się już skończyły. Pojęcia nie mam co robić.