PO Graficzny interfejs użytkownika - ćwiczenia: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Jsroka (dyskusja | edycje)
Jsroka (dyskusja | edycje)
Linia 44: Linia 44:
{{rozwiazanie| wyjaśnienie ||<div class="mw-collapsible mw-made=collapsible mw-collapsed"><div class="mw-collapsible-content" style="display:none">
{{rozwiazanie| wyjaśnienie ||<div class="mw-collapsible mw-made=collapsible mw-collapsed"><div class="mw-collapsible-content" style="display:none">
Widoczna będzie tylko etykieta dodana jako ostatnie, gdyż w każdym rejonie (bezparametrowa metoda ''add()'' dodaje komponenty po środu) może znajdować się tylko jeden komponent. Kolejne dodawane komponenty zastępują poprzednie.
Widoczna będzie tylko etykieta dodana jako ostatnie, gdyż w każdym rejonie (bezparametrowa metoda ''add()'' dodaje komponenty po środu) może znajdować się tylko jeden komponent. Kolejne dodawane komponenty zastępują poprzednie.
</div>
</div>}}
== Zadanie 2 ==
Zmodyfikuj klasę ''GridLayoutTest'', tak aby to trzecia pozycja w siadce (tam gdzie jest przycisk ''P3''), a nie szósta była pusta.
{| border="1"
|+ Podgląd działającego rozwiązania
! Archiwum JAR !! Applet
|-
| Żeby uruchomić przykład [[media:PO_GUI_Zad2.jar|Po_GUI_Zad2.jar]] ściągnij najpierw archium jar na swój komputer (możesz to zrobić klikając na odnośniku prawym klawiszem myszy i wybierając "Zapisz jako...") i uruchom jak zwykły program. || <applet code="applet.Zad2Applet" archive="images/d/db/PO_GUI_Applety.jar" width="300" height="120"></applet>
|}
{{rozwiazanie| kod ||<div class="mw-collapsible mw-made=collapsible mw-collapsed"><div class="mw-collapsible-content" style="display:none">
'''import''' java.awt.*;
'''import''' javax.swing.*;
'''public''' '''class''' Zad2 '''extends''' JFrame {
  Zad2() {
    '''super'''("Okno Zad2");
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   
    setLayout('''new''' GridLayout(3,2));
    add('''new''' JButton("P1"));
    add('''new''' JButton("P2"));
    add('''new''' JPanel());//pusty JPanel symuluje puste miejsce
    add('''new''' JButton("P3"));
    add('''new''' JButton("P4"));
    add('''new''' JButton("Bardzo długi przycisk"));
    setSize(300,150);
    setVisible('''true''');
  }
 
  '''public''' '''static''' '''void''' main(String[] args) {
    //aby uniknąć zakleszczeń, tworzenie GUI zawsze zlecamy dla wątku obsługi zdarzeń
    javax.swing.SwingUtilities.invokeLater('''new''' Runnable() {
      '''public''' '''void''' run() {
        '''new''' Zad2();
      }
    });
  }
}
</div>
</div>
</div>}}
</div>}}

Wersja z 03:51, 30 sie 2006

Zadanie 1

W klasie WitajŚwiecie umieść w oknie głównym drugą etykietę z tekstem. Użyj w tym celu bezparametrowej metody add(). Czy obie etykiety są widoczne? Jak to wyjąśnić?

Podgląd działającego rozwiązania
Archiwum JAR Applet
Żeby uruchomić przykład Po_GUI_Zad1.jar ściągnij najpierw archium jar na swój komputer (możesz to zrobić klikając na odnośniku prawym klawiszem myszy i wybierając "Zapisz jako...") i uruchom jak zwykły program. <applet code="applet.Zad1Applet" archive="images/d/db/PO_GUI_Applety.jar" width="300" height="120"></applet>

Rozwiązanie kod

{{{3}}}

Rozwiązanie wyjaśnienie

{{{3}}}

Zadanie 2

Zmodyfikuj klasę GridLayoutTest, tak aby to trzecia pozycja w siadce (tam gdzie jest przycisk P3), a nie szósta była pusta.

Podgląd działającego rozwiązania
Archiwum JAR Applet
Żeby uruchomić przykład Po_GUI_Zad2.jar ściągnij najpierw archium jar na swój komputer (możesz to zrobić klikając na odnośniku prawym klawiszem myszy i wybierając "Zapisz jako...") i uruchom jak zwykły program. <applet code="applet.Zad2Applet" archive="images/d/db/PO_GUI_Applety.jar" width="300" height="120"></applet>

Rozwiązanie kod

{{{3}}}