Elemente de programare în limbajul Java: Japplet-uri


    Limbajul JAVA permite realizarea de aplicatii atat "stand alone" cat si care pot rula in cadrul paginilor WEB. Aplicatiile Java destinate a fi rulate in cadrul paginilor WEB se numesc Applet-uri.

  • Realizarea unui applet

        Cum arata un applet?

        In cazul ca nu se lanseaza aplicatia de sus, pe calculatorul d-voastra trebuie instalat pachetul JDC versiunea JDK6 sau mai recenta.

        Cum se realizeaza un applet?
        Pentru aplicatia de sus se realizeaza urmatorii pasi:
    package demo;
    
    import java.awt.BorderLayout;
    import java.awt.Rectangle;
    import java.awt.GridBagLayout;
    import javax.swing.JButton;
    import javax.swing.JPanel;
    import javax.swing.JApplet;
    import javax.swing.JLabel;
    import javax.swing.JSlider;
    import javax.swing.Timer;
    
    public class demo_v1 extends JApplet {
    
    	private static final long serialVersionUID = 1L;
    	private JLabel etich_1 = null; 		// eticheta 1 
    	private JSlider slider_1 = null; 	// slider-ul 1
    	private JPanel panel_1 = null; 		// panoul 1
    	private JPanel c_panel_1 = null; 	// panoul 1 cu controale plasate
    	private int delay=50;			// temporizare
    	private Timer timer_1=null;		// timer 1
    	private JButton but_1 = null; 		// butonul 1
    	private JButton but_2 = null; 		// butonul 2
    
    	/**
    	 * Constructorul implicit pentru "utiliz_slider_v4"
    	 */
    	public demo_v1() {
    		super();
    	}
    	
    	/**
    	 * Aceasta metoda initializeaza: this
    	 * 
    	 * @returneaza  void
    	 */
    	
    	public void init() {
    		this.setSize(300,200);
    		this.setContentPane(init_panel_1());
    	}
    	/**
    	 * 	
    	 * Aceasta metoda creaza panelul: "but_1"	
    	 * Returneaza but_1 de tipul:	javax.swing.JButton
    	 */
    	private JButton creaza_but_1() {
    		if (but_1 == null) {
    			but_1 = new JButton();
    			but_1.setBounds(new Rectangle(110, 135, 70, 30));
    			but_1.setText("Start");
    			but_1.addActionListener(new java.awt.event.ActionListener() {
    				public void actionPerformed(java.awt.event.ActionEvent e) {
    					timer_1.start();				
    				}
    			});
    		}
    		return but_1;
    	}
    	/**
    	 * 	
    	 * Aceasta metoda creaza panelul: "but_1"	
    	 * Returneaza but_1 de tipul:	javax.swing.JButton
    	 */	
    	private JButton creaza_but_2() {
    		if (but_2 == null) {
    			but_2 = new JButton();
    			but_2.setBounds(new Rectangle(200, 135, 70, 30));
    			but_2.setText("Stop");
    			but_2.addActionListener(new java.awt.event.ActionListener() {
    				public void actionPerformed(java.awt.event.ActionEvent e) {
    					timer_1.stop();				
    				}
    			});
    		}
    		return but_2;
    	}
    
    	/**
    	 * Aceasta metoda initializeaza controlul de tip slider: slider_1
    	 * @returneaza slider_1 de tipul: javax.swing.JSlider	
    	 */
    	private JSlider creaza_slider_1() {
    		if (slider_1 == null) {
    			slider_1 = new JSlider(JSlider.HORIZONTAL,0,50,25); 
    			slider_1.setMajorTickSpacing(10);
    			slider_1.setMinorTickSpacing(1);
    			slider_1.setPaintTicks(true);
    			slider_1.setPaintLabels(true); 
    			slider_1.setBounds(new Rectangle(10, 20, 270, 60));
    			//slider_1.setBounds(new Rectangle(10, 10, 80, 270));
    			slider_1.addChangeListener(new javax.swing.event.ChangeListener() {
    				public void stateChanged(javax.swing.event.ChangeEvent e) {
    					etich_1.setText(Integer.toString(slider_1.getValue()));
    				}
    			});
    		}
    		return slider_1;
    	}
    	
    	/**
    	* Aceasta metoda creaza "timer_1"	
    	* nu returneaza nimic
    	*/
    		
    	private void creaza_timer_1() {
    
    		if (timer_1 == null) {
    			timer_1 = new Timer(delay, null);
    			//timer_1.setInitialDelay(delay *1); // Temporizare initiala
    			timer_1.setCoalesce(true);
    			timer_1.addActionListener(new java.awt.event.ActionListener() {
    				public void actionPerformed(java.awt.event.ActionEvent e) {
    					etich_1.setText(Integer.toString(slider_1.getValue()));
    					if(slider_1.getValue()==slider_1.getMaximum()){
    						slider_1.setValue(0);
    						}
    					else{
    						slider_1.setValue(slider_1.getValue()+1);
    					}
    				}
    			});					
        }
    }		
    	/**
    	 * Aceasta metoda creaza panelul: "panel_1"	
    	 * Returneaza panel_1 de tipul:	javax.swing.JPanel
    	 */
    	private JPanel creaza_panel_1() {
    		if (panel_1 == null) {
    			panel_1 = new JPanel();
    			panel_1.setLayout(new GridBagLayout());
    			panel_1.setBounds(new Rectangle(0, 20, 450, 200));
    		}
    		return panel_1;
    	}
    
    	/**
    	 * Aceasta metoda initializeaza panel_1 plasand controalele dorite 
    	 * Returneaza c_panel_1 de tipul: javax.swing.JPanel 
    	 */
    	private JPanel init_panel_1() {
    		if (c_panel_1 == null) {		
    			etich_1 = new JLabel();
    			etich_1.setBounds(new Rectangle(40, 144, 150, 10));
    			etich_1.setText("Utilizare slider");
    			c_panel_1 = new JPanel();
    			c_panel_1.setLayout(null);
    			c_panel_1.add(etich_1, null);
    			c_panel_1.add(creaza_but_1(), null);
    			c_panel_1.add(creaza_but_2(), null);
    			c_panel_1.add(creaza_slider_1(), null);
    			c_panel_1.add(creaza_panel_1(), null);
    			c_panel_1.setLayout(new BorderLayout());
    			creaza_timer_1();
    			timer_1.start();
    		}
    		return c_panel_1;
    	}	
    }