POO Lab Lucrarea 6: Diferență între versiuni

De la WikiLabs
Jump to navigationJump to search
Linia 20: Linia 20:


* Folosind Java Swing, creați o interfață grafică, ca cea din figură, care să implementeze funcționalitatea clientului. Numiți clasa <code style="color: green">seriaf.poo.client.gui.GuiClient</code>. Este interzisă utilizarea unui ”Gui Creator” precum cel din Netbeans.
* Folosind Java Swing, creați o interfață grafică, ca cea din figură, care să implementeze funcționalitatea clientului. Numiți clasa <code style="color: green">seriaf.poo.client.gui.GuiClient</code>. Este interzisă utilizarea unui ”Gui Creator” precum cel din Netbeans.
* Constructorul clasei GuiClient trebuie să ia ca argumente hostname-ul serverului și valoarea portului TCP pe care se face conectarea.
* Constructorul clasei <code style="color: green">GuiClient</code> trebuie să ia ca argument un obiect de tip <code style="color: green">Socket</code> deja conectat și să instanțieze un obiect de tip <code style="color: green">ClientPeer</code> a cărui referință se salvează într-un câmp.
* Metoda <code style="color: green">main</code> din <code style="color: green">GuiClient</code> trebuie să instanțieze un obiect de tip <code style="color: green">Socket</code> și un obiect de tip <code style="color: green">GuiClient</code>.
* Hostname-ul și port-ul la care se conectează clientul sunt date ca argument la execuția programului (vezi https://docs.oracle.com/javase/tutorial/essential/environment/cmdLineArgs.html).
* Componentele grafice (butoane, textFields, etc.) trebuie să fie câmpuri în clasa <code style="color: green">GuiClient</code> și să aibă următoarele nume:
* Componentele grafice (butoane, textFields, etc.) trebuie să fie câmpuri în clasa <code style="color: green">GuiClient</code> și să aibă următoarele nume:
** câmpul de editare pentru numele expeditorului - <code style="color: green">mSenderTextField</code>
** câmpul de editare pentru numele expeditorului - <code style="color: green">mSenderTextField</code>

Versiunea de la data 10 decembrie 2015 14:26

Noțiuni și cunoștințe necesare

Cerințe

Interfața grafică pentru client
  • Folosind Java Swing, creați o interfață grafică, ca cea din figură, care să implementeze funcționalitatea clientului. Numiți clasa seriaf.poo.client.gui.GuiClient. Este interzisă utilizarea unui ”Gui Creator” precum cel din Netbeans.
  • Constructorul clasei GuiClient trebuie să ia ca argument un obiect de tip Socket deja conectat și să instanțieze un obiect de tip ClientPeer a cărui referință se salvează într-un câmp.
  • Metoda main din GuiClient trebuie să instanțieze un obiect de tip Socket și un obiect de tip GuiClient.
  • Hostname-ul și port-ul la care se conectează clientul sunt date ca argument la execuția programului (vezi https://docs.oracle.com/javase/tutorial/essential/environment/cmdLineArgs.html).
  • Componentele grafice (butoane, textFields, etc.) trebuie să fie câmpuri în clasa GuiClient și să aibă următoarele nume:
    • câmpul de editare pentru numele expeditorului - mSenderTextField
    • butonul de schimbare a numelui - mChangeSenderButton
    • fereastra de afișare a mesajelor - mMessageDisplayTextArea
    • câmpul de editare pentru mesaj - mMessageTextField
    • butonul pentru trimiterea mesajului - mSendMessageButton
    • scroll pane-ul în care este plasată zona de afișare a mesajelor - mMessageAreaScrollPane
  • La apăsarea butonului X al ferestrei, aplicația trebuie să se oprească.
  • Fereastra principală trebuie să nu poată fi redimensionată (trebuie dimensionată programatic astfel încât componentele să fie ușor de observat și utilizat).