Interfață grafică în Java

Curs
9.8/10 (6 voturi)
Domeniu: Calculatoare
Conține 1 fișier: doc
Pagini : 18 în total
Cuvinte : 3489
Mărime: 20.90KB (arhivat)
Cost: Gratis

Extras din document

Toate interfetele extind interfata java.util.EventListener

Un obiect A care trebuie sa intercepteze evenimente de un anumit tip produse de un anumit obiect grafic B trebuie sa se înregistreze (sa se adauge la lista ascultatorilor) la acesta :

B.add<tip_eveniment>Listener(A);

buton.addActionListener( A );

text.addTextListener ( A );

...

Pentru simplitate, de multe ori nu se mai declara o clasa separata care sa asculte evenimentele generate de diferitele componente grafice, ci clasa respectiva va implementa interfetele necesare si va prelucra evenimentele

public class TestApplet extends Applet

implements ActionListener, TextListener, ItemListener

Dimensionarea si pozitionarea controalelor

Dupa executia exemplelor de mai sus se poate observa ca elementele grafice au fost dimensionate si aranjate automat de catre mediul Java.

Orice componenta are asociate urmatoarele dimensiuni :

• curenta : data de getSize()

• minima : cel mai mic dreptunghi în care poate fi afisata

• preferata : dimensiunea implicita (optima)

Metode :

public void setSize(Dimension)

public Dimension getSize()

public Dimension getPreferredSize()

public Dimension minDimension()

Obs : Dimension este o clasa care precizeaza înaltimea si latimea unui anumit obiect :

Dimension dim = new Dimension()

dim.width = 10;

dim.height = 20;

<obiect_grafic>.resize(dim);

Pozitionarea automata a controalelor se face de la stânga la dreapta, în limita spatiului disponibil, trecându-se la urmatorul rând câns spatiul este insuficient. Aceasta înseamna ca redimensionarea ferestrei poate provoca rearanjarea controalelor pe suprafata de afisare.

Modul de aranjare nu este o caracteristica a clasei Container. Fiecare obiect de tip Container, sau o extensie a lui (Applet, Frame, Panel) are asociat un obiect care se ocupa cu dispunerea componentelor pe suprafata de afisare si care se numeste gestionar de pozitionare (Layout Manager). Toti gestionarii de pozitionare implementeaza interfata LayoutManager. La instantierea unui container se creeaza implicit un obiect dintr-o clasa ce implementeaza interfata LayoutManager si care realizeaza o dispunere foarte simpla, conforma cu descrierea anterioara (stânga®dreapta, sus®jos).

Aceasta clasa se numeste java.awt.FlowLayout.

Pe lânga FlowLayout, ierarhia AWT mai pune la dispozitie si alti gestionari de pozitionare. Unul dintre acestia este BorderLayout, care stie sa dispuna componentele în 5 pozitii corespunzatoare celor 4 puncte cardinale si centrului :

Nord

West Center East

South

Exemplu

cb_upper = new Button(“upper”);

cb_lower = new Button(“upper”);

cb_reset = new Button(“reset”);

sle_text = new TextFiled(“Introduceti text:”);

LayoutManager gestionar = new BorderLayout();

this.setLayout(gestionar);

this.add(“North”, txt);

this.add(“Center”, cb_reset);

this.add(“West”, cb_upper);

this.add(“East”, cb_lower); //.....

Caracteristicile unei componente

Caracteristica Obtinere Modificare

Dimensiune Dimension getSize() void setSize(Dimension d)

Pozitie Point getLocation() void setLocation (Point p)

Dreptunghi de încadrare Rectangle getBounds() void setBounds(Rectangle r)

Culoare de desenare Color getForeground() void setForeground(Color c)

Culoare fundal Color getBackground void setBackground(Color c)

Font Font getFont() void setFont(Font f)

Exista câteva clase introduse pentru manipularea mai usoara a informatiilor legate de obiectele grafice. Acestea sunt:

• Dimension - cu 2 câmpuri publice width, height

• Rectangle - x, y, width, height

• Point - x, y

Panel

Plasarea controalelor direct pe suprafata de afisare poate deveni incomoda în cazul în care avem multe obiecte grafice. Din acest motiv se recomanda gruparea obiectelor grafice înrudite ca functii astfel încât sa putem fi siguri ca, indiferent de gestionarul de pozitii al suprafetei de afisare, ele se vor gasi împreuna. Gruparea controalelor se face în panel-uri. Pentru aceasta exista clasa Panel care extinde Container. In cadrul unui panel se poate specifica de asemenea un gestionar de pozitie astfel încât putem aranja atât obiectele în cadrul panel-ului, cât si panel-urile în cadrul suprafetei de afisare.

Exemplu:

import java.applet.*;

import java.awt.*;

import java.awt.event.*;

public class TestPanel extends Applet {

Button cb_upper, cb_lower, cb_reset;

TextField sle_text;

Panel butoane;

public void init() {

cb_upper = new Button("upper");

cb_lower = new Button("lower");

cb_reset = new Button("reset");

sle_text = new TextField("Introduceti text !");

butoane = new Panel();

this.setLayout( new BorderLayout() );

butoane.setLayout(new FlowLayout());

butoane.add( cb_upper);

butoane.add( cb_lower);

butoane.add( cb_reset);

this.add("North", sle_text);

this.add("West", butoane);

}

}

Preview document

Interfață grafică în Java - Pagina 1
Interfață grafică în Java - Pagina 2
Interfață grafică în Java - Pagina 3
Interfață grafică în Java - Pagina 4
Interfață grafică în Java - Pagina 5
Interfață grafică în Java - Pagina 6
Interfață grafică în Java - Pagina 7
Interfață grafică în Java - Pagina 8
Interfață grafică în Java - Pagina 9
Interfață grafică în Java - Pagina 10
Interfață grafică în Java - Pagina 11
Interfață grafică în Java - Pagina 12
Interfață grafică în Java - Pagina 13
Interfață grafică în Java - Pagina 14
Interfață grafică în Java - Pagina 15
Interfață grafică în Java - Pagina 16
Interfață grafică în Java - Pagina 17
Interfață grafică în Java - Pagina 18

Conținut arhivă zip

  • Interfa grafica in Java.doc

Alții au mai descărcat și

Crearea unui sistem de telefonie mobilă în baza tehnologiei CORBA

Întroducere Orice construcţie are nevoie mai întâi de o bază. Aceasta nu e teoremă ci o axiomă. Şi pentru că de cum a fost pusă baza depinde...

Calculatoare - introducere, componente - structură și funcționare

ARGUMENT Lucrarea de fata prezinta principalele aspecte ale arhitecturii si organizarii calculatoarelor numerice. Materialul este organizat astfel...

Proiectarea și Crearea unui Web Server

INTRODUCERE În prezent produsele soft se implementează foarte rapid, din cauza dezvoltării enorme a tehnologiilor informaţionale, acumulării...

Auditul Sistemelor Informatice

INTRODUCERE Societatea informationala determina o crestere dramatica a dependentei tuturor domeniilor vietii economico-sociale de tehnnologiile...

Auditarea Sistemelor Informatice

1.Având în vedere modificarile intervenite în economia româneasca si europeana agentii economici care folosesc în contabilitate si finante-banci...

Crearea unui Site Web

1. INTRODUCERE 1.1. Contextul Într-o eră în care informaţia devine din ce în ce mai abundentă şi din ce în ce mai necesară apare nevoia ca...

Factori de Succes în Dezvoltarea Sistemelor Informaționale

INTRODUCERE În noua economie, producătorii de soluţii IT sunt confruntaţi cu o nouă cerinţă care îi obligă să schimbe total modul de construcţie a...

Bazele programării pe obiecte

Partea 1. Teorie I. Programarea pe Obiecte.Notiuni Generale I.1. Obiecte.Clase.Caracteristici. I.1.1. Introducere. Limbajele de programare,...

Te-ar putea interesa și

Analiza metodelor de planificare a proceselor în sisteme distribuite

Introducere În cazul sistemelor care au un număr mare de resurse şi aplicaţii care urmează să fie executate, problema principală este...

Proiectarea și Crearea unui Web Server

INTRODUCERE În prezent produsele soft se implementează foarte rapid, din cauza dezvoltării enorme a tehnologiilor informaţionale, acumulării...

Ilustrarea și simularea unor algoritmi legați de inteligența artificială folosind programarea orientată pe obiect în limbajul java

Introducere Am ales lucrarea intitulată „Ilustrarea și simularea unor algoritmi de inteligență artificială folosind programarea orientată pe...

Structuri de Date în Limbajul Java

Motivaţia lucrării Structurile de date reprezintă modalitatea în care datele sunt dispuse în memoria calculatorului(sau păstrate pe disc)....

Extragerea cunoștințelor din baze de date - Weka

1. Introducere Weka este o colectie de algoritmi de invatare pentru data mining. Algoritmii pot fi aplicati fie direct pe un set de date sau...

Sistem de comunicație client server

Introducere In cadrul acestui proiect am realizat un sistem de comunicatie client server bazat pe socket TCP,fire de executie si interfata grafica...

Java

INSTRUCTIUNI SI EXPRESII Toate activitatile ce se realizeaza intr-un program Java pot fi rezumate la o serie de instructiuni . O instructiune (...

Java

Java este o tehnologie inovatoare lansata de compania Sun Microsystems 1n 1995, care a avut un impact remarcabil asupra a1ntregii comunitatsi a...

Ai nevoie de altceva?