Documente Academic
Documente Profesional
Documente Cultură
LECIA NR. 3
Iniierea n programarea vizual
Petic Mircea
petic.mircea@yahoo.com
www.facebook.com/mircea.petic
Prima fereastr
O fereastr este un obiect al clasei JFrame.
Clasa JFrame este reinut n pachetul
javax.swing.
Exemplu 1.
import javax.swing.*;
public class pv {
public static void main(String args[]){
JFrame fer=new JFrame(Prima fereastra!);
fer.setSize(200,300);
fer.setLocation(300,400);
fer.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
fer.setVisible(true);
}
}
Metodele utilizate
JFrame() constructor.
void setSize(int width, int height)
stabilete lungimea i limea ferestrei.
void setLocation(int x, int y)
stabilete poziia unde va fi afiat colul din stnga
sus al ferestrei, n raport cu colul din stnga sus al
ecranului.
void setResizable(boolean ac) dac
parametrul este false nu se pot modifica
dimensiunile ferestrei.
Metodele utilizate
void setDefaultCloseOperation(int a)
stabilete ce se ntmpl atunci cnd se nchide
fereastra.
Interfata ActionListener
Interfaa ActionListener asculttorul de
evenimente.
Un eveniment de tip ActionListener este
apsarea unui buton.
Interfaa conine antetul unei singure metode:
actionPerformed (ActionEvent e)
Clasa ActionEvent
ActionEvent este clasa care conine
metoda:
String getActionCommand() returneaz
irul de caractere asociat componentei care a
transmis evenimentul. Metoda poate fi utilizat
pentru a depista componenta care a transmis
evenimentul.
Clasa JComponent
Exemplu:
JButton A=new JButton(Apasa);
A.setBackground(Color.red);
A.setFont(new Font(Arial,
Font.ITALIC, 20));
A.setForeground(Color.GREEN);
Clasa Toolkit
Clasa ToolKit este acea clas care permite ca
programele scrise n Java s ruleze
independent de rezoluia calculatorului.
Metodele clasei ToolKit:
public static Toolkit getDefaultToolkit()
Poziionarea componentelor
Pentru aezarea componentelor n poziia
dorit, putem s utilizm poziionarea
absolut sau unul dintre gestionarii de
poziionare existeni:
FlowLayout
GridLayout
BorderLayout
GridBagLayout
CardLayout
Poziionarea absolut
Coordonatele snt date n pixeli.
Absena gestionarului se stabilete astfel:
Container x=getContentPane();
x.setLayout(null);
setPrefferedSize(Dimension dim) se
specific limea i nalimea componentei.
Constructorii:
GridLayout()
GridLayout(int nrlinii, int nrcoloane)
GridLayout(int nrlinii, int nrcoloane,
int sp_o, int sp_v)
Gestionarul de poziionare
BorderLayout
Clasa BorderLayout mparte suprafaa n 5
pri, n care se poate de aezat cte o
component.
Metoda add() are 2 parametri: componenta
i partea n care se aeaz.
x.setLayout(new BorderLayout());
x.add(A,BorderLayout.SOUTH);
Gestionarul GridBagLayout
Este o extindere a gestionarului GridLayout().
Proporiile ntre linii i coloane pot fi diferite,
iar componenta poate ocupa unul sau mai
multe dreptunghiuri.
Gestionarul CardLayout
Acest gestionar se caracterizeaz prin faptul c, la
un moment dat, afieaz o singur component.
Metodele:
CardLayout() constructor
next(Container parinte) afieaz urmtoarea
component.
last(Container parinte) se afieaz ultima
component
first(Container parinte) se afieaz prima
component.
addLayout(String nume, Component c) se adaug o
component creia i se i atribuie un nume.
Exemplu:
Icon icon=new ImageIcon(om.gif);
JButtonA=new JButton(icon);
Exemplu cu JButton
import java.awt.*;
import javax.swing.*;
class Fereastra extends JFrame{
Fereastra (String Nume)
{
super(Nume); setSize(200,100);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container x=getContentPane();
x.setLayout(new FlowLayout() );
Icon icon = new ImageIcon("image.gif");
JButton A=new JButton("Java", icon);
A.setVerticalTextPosition(JButton.TOP);
A.setHorizontalTextPosition(JButton.CENTER);
x.add(A);
setVisible(true);
}
}
Exemplu JLabel
import java.awt.*;
import javax.swing.*;
class Fereastra extends JFrame{
Fereastra (String Nume)
{
super(Nume); setSize(200,100);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container x=getContentPane();
x.setLayout(new FlowLayout() );
Icon icon = new ImageIcon("image.gif");
JLabel A=new JLabel("Java", icon,JLabel.CENTER);
A.setVerticalTextPosition(JLabel.TOP);
A.setHorizontalTextPosition(JLabel.CENTER);
x.add(A);
setVisible(true);
}
}
Meniuri
n Java meniurile se construiesc prin utilizarea
obiectelor mai multor clase:
Clasa JMenuBar obiectele acestei clase se utilizeaz
pentru a obine meniuri clasice, aflate n partea de sus
a ferestrei.
Clasa JMenu obiectele acestei clase au rolul de a
nscrie n meniu anumite opiuni, care la rndul lor pot
conine opiuni.
Clasa JMenuItem o astfel de component care apare
n meniu, arat ca o opiune i are rolul unui buton,
adic selectat, conduce la o anumit aciune.
Meniuri 2 (pv3.java)
Meniurile pot conine i submeniuri.
Unei componente de tip JMenu i se adaug,
pe lng alte componente de tip JMenuItem, o
alt component, tot de tip JMenu.
Acesteia din urm i se adaug componente de
tip JMenuItem.