Chestii-tari - tutoriale,trucuri si distractie doar aici

Va rugam sa va logati pentru a putea cedea link-urile din post-uri!

Multumim

Chestii-tari.hitforum.ro va indeamna sa gasiti ceea ce cautati!

Creeaza-ti propriul server de ikariam ,gladiatus ,triburile sau travian...mai multe informatii gasiti pe acest forum! Have a Smile) day!

    Java-ferestre

    Distribuiţi
    avatar
    Admin
    Admin

    Mesaje : 215
    galbeni : 603
    Reputatie : 0
    Data de inscriere : 17/11/2011

    Java-ferestre

    Mesaj  Admin la data de Dum Feb 24, 2013 7:01 am


    Ferestre

    Suprafe]ele de afi[are ale unei componente grafice sunt extensii ale clasei Container. Dup\ cum am v\zut, pentru implementarea unui applet s-au folosit suprafe]ele de afi[are Applet [i Panel. O aplica]ie intependent\ are îns\ nevoie de propriile ferestre pe care s\ fac\ afi[area componentelor grafice. Pentru dezvoltarea aplica]iilor care folosesc grafic\ se vor folosi clasele Window, Frame, Dialog.

    Clasa Window

    Clasa Window este rar utilizat\ în mod direct. Ea permite crearea unor ferestre top-level care nu au chenar [i nici bar\ de meniuri. Pentru a crea ferestre mai complexe se utilizeaz\ clasele Frame [i Dialog.

    Constructor

    Window (Frame)

    Constructs a new Window initialized to an invisible state.

    Metode

    addNotify () Creates the Window's peer.

    dispose()

    {terge o fereastr\ de care nu mai este nevoie. Trebuie apelat\ pentru a elibera resursele

    getToolkit() Returns the toolkit of this frame.

    getWarningString() Gets the warning string for this window.

    pack()

    Redimensioneaz\ fereastra specific\ corespunz\tor dimensiunilor componentelor sale

    show()

    Afi[eaz\ fereastra specificat\. In mod implicit, o fereastr\ nou creat\ nu este vizibil\.

    toBack()

    Fereastra curent\ este trimis\ în spatele celorlate ferestre.

    toFront()

    Afi[eaz\ fereastra specificat\ deasupra celorlalte ferestre.

    Clasa Frame

    Este o subclas\ a clasei Window. Creeaz\ ferestre independente [i func]ionale, con]inând bare de meniuri.

    Variabile

    CROSSHAIR_CURSOR

    DEFAULT_CURSOR

    E_RESIZE_CURSOR

    HAND_CURSOR

    MOVE_CURSOR

    NE_RESIZE_CURSOR

    NW_RESIZE_CURSOR

    N_RESIZE_CURSOR

    SE_RESIZE_CURSOR

    SW_RESIZE_CURSOR

    S_RESIZE_CURSOR

    TEXT_CURSOR

    WAIT_CURSOR

    W_RESIZE_CURSOR

    Constructori

    Frame () Constructs a new Frame that is initially invisible.

    Frame(String) Constructs a new, initially invisible Frame with the specified title.

    Metode

    addNotify () Creates the Frame's peer.

    dispose() Disposes of the Frame.

    getCursorType() Return the cursor type

    getIconImage() Returns the icon image for this Frame.

    getMenuBar() Gets the menu bar for this Frame.

    getTitle() Gets the title of the Frame.

    isResizable() Returns true if the user can resize the Frame.

    paramString() Returns the parameter String of this Frame.

    remove(MenuComponent) Removes the specified menu bar from this Frame.

    setCursor(int) Set the cursor image to a predefined cursor.

    setIconImage(Image) Sets the image to display when this Frame is iconized.

    setMenuBar(MenuBar)Sets the menubar for this Frame to the specified menubar.

    setResizable(boolean) Sets the resizable flag.

    setTitle(String) Sets the title for this Frame to the specified title.

    Exemplu - crearea [i afi[area unei clase

    import java.awt.*;

    public class TestWindow {

    public static void main(String args[]) {

    Frame f = new Frame("Test Frame");

    f.show();

    }

    }

    Gestionarul implicit al clasei Window este BorderLayout. Din acest motiv, în momentul în care fereastra este creat\ dar nici o component\ grafic\ nu este pus\ pe suprafa]a ei, suprafa]a de afi[are a feretrei va fi nul\.

    Acela[i efect îl vom ob]ine dac\ o redimenion\m [i apel\m apoi metoda pack() care determin\ dimeniunea suprafe]ei de afi[are în func]ie de componentele grafice afi[ate pe ea.

    Se observ\ de asemenea c\ butoanele de maximizare, minimizare [i închidere ale ferestrei nu sunt func]ionale. Aceasta deoarece, similar celorlalte butoane, ele genereaz\ ni[te evenimente care îns\ nu sunt recep]ionate de obiectul care reprezint\ fereastra deoarece acesta nu s-a înregistrat ca ascult\tor. Interceptarea evenimentelor se face prin implementarea interfe]ei WindowListener [i prin ad\ugarea în lista ascult\torilor ferestrei chiar a obiectului care implementeaz\ fereastra.

    import java.awt.*;

    import java.awt.event.*;

    class Cadru extends Frame implements WindowListener {

    public Cadru(String titlu) {

    super(titlu);

    this.addWindowListener(this);

    }

    //metodele interfetei WindowListener

    public void windowOpened(WindowEvent e) {}

    public void windowClosing(WindowEvent e) {

    System.exit(0);

    }

    public void windowClosed(WindowEvent e) {}

    public void windowIconified(WindowEvent e) {}

    public void windowDeiconified(WindowEvent e) {}

    public void windowActivated(WindowEvent e) {}

    public void windowDeactivated(WindowEvent e) {}

    }

    public class TestWindow {

    public static void main(String args[]) {

    Cadru w_main = new Cadru("Test Frame");

    Button cb_ok = new Button(“OK”);

    w_main.add(cb_ok);

    w_main.pack();

    w_main.show();

    }

    }

    Ferestre de dialog - Clasa Dialog

    Toate mediile grafice ofer\ [i un tip special de ferestre destinate prelu\rii datelor de la utilizator. Acestea se numesc ferestre de dialog sau casete de dialog [i sunt de dou\ tipuri :

    modale : care blocheaz\ accesul la fereastra p\rinte - de exemplu, ferestre de introducere a unor date, de alegere a unui fi[ier în vederea deschideriii, de selectare a unei op]iuni, mesaje de avertizare, etc

    nemodale : care nu blocheaz\ fluxul de intrare c\tre fereastra p\rinte - de exemplu, ferestrele de c\utare a unui cuvânt într-un fi[ier.

    Crearea unor astfel de ferestre se realizeaz\ prin intermediul clasei Dialog.

    Clasa Dialog

    Constructori

    Dialog (Frame w_parent, boolean modal)

    Dialog(Frame w_parent, String titlu, boolean modal)

    Construie[te o caset\ de dialog ini]ial invizibil\, având ca p\rinte fereastra w_parent. Valoarea logic\ <modal> specific\ dac\ fereastra de dialog este modal\ sau nu.

    Metode

    addNotify () Creates the frame's peer.

    getTitle() Gets the title of the Dialog.

    isModal() Returns true if the Dialog is modal.

    isResizable() Returns true if the user can resize the frame.

    paramString() Returns the parameter String of this Dialog.

    setResizable(boolean) Sets the resizable flag.

    setTitle(String) Sets the title of the Dialog.

    Exemplu

    Dialog d = new Dialog(w_main, "Fereastra dialog", true);

    Panel butoane = new Panel();

    butoane.setLayout(new FlowLayout());

    butoane.add(new Button("DA"));

    butoane.add(new Button("NU"));

    d.add("South", butoane);

    d.add("Center", new Label("Sigur doriti sa faceti asta?"));

    d.setSize(new Dimension(200,100));

    d.show();

    Crearea de dialoguri este relativ simpl\. Mai complicat este îns\ modul în care se implementeaz\ comunicarea între fereastra de dialog [i aplica]ie, pentru ca aceasta din urm\ s\ poat\ folosi datele introduse (sau op]iunea specificat\) în caseta de dialog. Exist\ dou\ abord\ri generale :

    obiectul care reprezint\ dialogul poate s\ capteze evenimentele de la butoanele ferestrei [i de la controalele de pe suprafa]a sa [i s\ s\ seteze valorile unor parametri ai aplica]iei în momentul în care dialogul este încheiat sau

    obiectul care creeaz\ dialogul (fereastra p\rinte) s\ se înregistreze ca ascult\tor al evenimentelor de la butoanele care determin\ încheierea dialogului, iar obiectul dialog s\ ofere metode publice prin care datele introduse s\ fie preluate din exterior.

    Obs: A doua metod\ este mai uzual\.

    Clasa FileDialog

    Pachetul java.awt pune la dispozi]ie [i un tip de fereastr\ de dialog folosit pentru înc\rcarea / salvarea fi[ierelor. Clasa FileDialog are un comportament comun dialogurilor de acest tip de pe majoritatea sistemelor, dar forma sa specific\ în care va fi afi[at\ este specific\ platformei pe care ruleaz\ aplica]ia.

    Variabile

    LOAD The file load variable.

    SAVE The file save variable.

    Constructor

    FileDialog (Frame, String) Creates a file dialog for loading a file.

    FileDialog(Frame, String, int)Creates a file dialog with the specified title and mode.

    Metode

    addNotify () Creates the frame's peer.

    getDirectory() Gets the directory of the Dialog.

    getFile() Gets the file of the Dialog.

    getFilenameFilter() Gets the filter.

    getMode() Gets the mode of the file dialog.

    paramString() Returns the parameter String of this file dialog.

    setDirectory(String)

    Set the directory of the Dialog to the specified directory.

    setFile(String)

    Sets the file for this dialog to the specified file.

    setFilenameFilter(FilenameFilter)

    Sets the filter for this dialog to the specified filter.

    Exemple:

    FileDialog f1 = new FileDialog(w_main, “Alegere fisier”,

    FileDialog.LOAD); //dialog pentru incarcarea unui fisier

    FileDialog f2 = new FileDialog(w_main, “Salvare fisier”,

    FileDialog.SAVE); //dialog pentru salvarea unui fisier

    f1.setDirectory(“./”); //directorul curent

    f2.setDirectory(“/”); //directorul radacina

    f1.setFile(“*.java”);

    f2.setFile(”test.html”);//fisierul care apare initial

    f1.setFileNameFilter(new JavaFilter());

    class JavaFilter implements FilenameFilter {

    public boolean accept(File dir, String numeFis) {

    return (numeFis.endsWith(“.java”));

    }

    }

    Obs: La crearea unui obiect FileDialog acesta nu este implicit vizibil. Dac\ afi[area sa se face cu show() caseta de dialog va fi modal\. Dac\ afi[area se face cu setVisible(true) va fi nemodal\. Dup\ selectarea unui fi[ier ea va fi f\cut\ automat invizibil\.


      Acum este: Mier Dec 13, 2017 7:04 am