Cum se poate crea principala fereastra in Swing ?
JFrame frame = new JFrame();
Cati constructori are si ce accepta in constructori JFrame(); ?
Jframe accepta 3 constructori:
Detectarea si modificarea pozititei ferestrei JFrame se face cu metodele ?
getLocation() si setLocation();
Care este codul pentru afisarea unei ferestre de tip info message ?
JOptionPane.showMessageDialog(frame,”message”);
Cum se poate seta dimensiunea ferestrei JFrame ?
frame.setSize(600,400);
Cum se poate prelua dimensiunea ferestrei JFrame?
frame.getSize().width, frame.getSize().height
Fereastra JFrame nu va fii afisata decat daca ?
Se foloseste metoda frame.setVisible(true);
Cum putem sa distrugem fereastra JFrame?
folosind metoda dispose(); //frame.dispose();
Daca inchidem fereastra JFrame folosind butonul x, vom observa ca aplicatia va rula in continuare. Ce putem face ca aplicatia sa se inchida o data cu fereastra JFrame ?
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Cum se poate adauga sau scoate o componenta child de pe JFrame ?
Adauga pe frame un buton si apoi scoatel.
folosind metoda add() si remove();
JButton b = new JButton(“Test);
frame. add(b);
frame. remove(b);
Care este Layout-ul implicit a lui JFrame ?
BorderLayout.
Cu ce metoda se poate seta layout-ul ?
setLayout();
Schimbati layout-ul din BorderLayout in FlowLayout
frame. setLayout(new FlowLayout));
frame. add(new JButton(“Hello”));
Cum se poate localiza o componenta care a fost adaugata anonim in container ?
Folosind frame.getContentPane().getComponent(0);
Cum se foloseste cel mai des JFrame ?
Da-ti un ex:
Cel mai des JFrame va fii mostenita de o alta clasa.
Ex:
public class MyFrame extends JFrame { public MyFrame() {
initComponents();
} void initComponents() {
this.setSize(600, 400);
this.setVisible(true);
}}
//Main
public class MyApp { public static void main(String[] args) {
MyFrame mf = new MyFrame();
}}
Folosind clasa MyFrame din exemplul anterior, desenati un String cu valoarea Hello pe locatia 200,200
@Override
public void paint(Graphics g)
{
g.drawString("Hello", 200, 200);
}