Witam serdecznie
Jestem początkującym w języku Java. Bardzo początkującym. Pracuję nad projektem, ale nie mając podstaw (uczę się sam) bardzo mi ciężko znaleźć rozwiązanie. Wziąłem udział w projekcie programistycznym w którym są trzy zadania do wykonania. Jest to projekt, który pozwoli mi nauczyć się programowania. Oczywiście jeżeli mi uda się zaliczyć zdania. Jestem zmotywowany i bardzo mi na tym zależy.
Pierwsze zadanie to: Aplikacja, która wyświetla ekran startowy z dowolnym obrazkiem (tzw. splash screen). Ekran startowy widoczny jest przez 5 sekund. Użytkownik może w tym czasie nacisnąć przycisk BACK co powinno zatrzymać przejście do ekranu głównego aplikacji. Jeżeli użytkownik nie użyje przycisku BACK to aplikacja po 5 sekundach zamyka ekran startowy i przechodzi do pustego ekranu głównego.
Napisałem coś takiego: W poniższym programie pojawia się ramka z obrazkiem oraz przyciskiem BACK. Po kliknięciu przycisku okienko się zamyka. Jeżeli poczekamy 5s to okienko także się zamyka. Zrobiłem to po to, aby widzieć, że aplikacja działa. Niestety nie umiem pokazać po 5s drugiego obrazka (lub pustego okienka) bez przycisku BACK.
Niestety nie rozumiem wielu spraw. Czy mógłbym poprosić o pomoc? Pozdrawiam Łukasz.
import javax.swing.*;
import java.awt.event.ActionEvent;
class SplashScreenIntive extends JFrame {
JButton b1;
public SplashScreenIntive() {
setTitle("Splash Screen Intive");
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
setContentPane(new JLabel(new ImageIcon("intive_welcome.jpg")));
JButton b1 = new JButton("BACK");
b1.setBounds(100, 200, 100, 50);
b1.addActionListener((ActionEvent event) -> {
System.exit(0);
});
add(b1);
setSize(300, 500);
}
public static void main(String args[]) {
int duration = 5000;
SplashScreenIntive ex = new SplashScreenIntive();
ex.setVisible(true);
try {
Thread.sleep(duration);
}
catch (InterruptedException e) {
}
ex.setVisible(false);
System.exit(0);
}
}