Vícestránková aplikace – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Vícestránková aplikace – Java – Fórum – Programujte.comVícestránková aplikace – Java – Fórum – Programujte.com

 

MiraP
~ Anonymní uživatel
1 příspěvek
5. 8. 2018   #1
-
0
-

Zdravím,
už nějakou dobu přemýšlím nad tím, jak v Javě (Java Swing, Netbeans) vytvořit aplikaci, kde bude přihlašovací formulář připojený k databázi a po ověření uživatele dojde k přepnutí na jinou stránku. Zatím jsem vytvořil aplikaci, kde k přechodu dochází pomocí změny viditelnosti jednotlivých jFrame, ale to mi připadá jako divné řešení. Chci se zeptat, zda-li někdo z vás neví jak vytvořit aplikaci, kde by ke změně obsahu docházelo pouze v jednom jFrame, pomocí přepínání jPanelů. 

Nahlásit jako SPAM
IP: 77.48.233.–
Kit+15
Guru
5. 8. 2018   #2
-
0
-

#1 MiraP
 

JFrame frame = new JFrame();
Container container = frame.getContentPane();

JPanel loginPanel = new JPanel();
container.add(loginPanel);

// výměna

JPanel appPanel = new JPanel();
container.removeAll();
container.add(appPanel);
Nahlásit jako SPAM
IP: 2a00:1028:83a0:37a6:415:9...–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
Jokertwo
~ Anonymní uživatel
7 příspěvků
14. 8. 2018   #3
-
0
-

#1 MiraP
Ahoj, mohl by jsi použít layout manager CardLayout, který přesně tohle umí. V jednom JFramu/JPanelu přepínat obsah.

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
public class CardLayoutExample {
 
  public static void main(String[] arguments) {
 
    // main window
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame window = new JFrame("CardLayout Example");
    window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    window.setSize(300,300); 
    window.setLayout(new BorderLayout());
 
 
    final CardLayout cardLayout = new CardLayout(); 
    final JPanel cardPanel = new JPanel(cardLayout);
 
    // create two dummy panels (the "cards") to show
    JPanel card1 = new JPanel();
    card1.setBackground(Color.red);
 
    JPanel card2 = new JPanel();
    card2.setBackground(Color.blue);
 
    cardPanel.add(card1,"RedCard");
    cardPanel.add(card2,"BlueCard");
 
 
    // create two buttons 
    JPanel buttonPanel = new JPanel();
    JButton b1 = new JButton("Red");
    JButton b2 = new JButton("Blue");
    buttonPanel.add(b1);
    buttonPanel.add(b2);
 
    // create action listeners for buttons
    b1.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent event) {
        cardLayout.show(cardPanel, "RedCard");
      }
    });
 
    b2.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent event) {
        cardLayout.show(cardPanel, "BlueCard");
      }
    });
 
    // add card & button panels to the main window
    window.add(cardPanel,BorderLayout.CENTER);
    window.add(buttonPanel,BorderLayout.SOUTH);
    window.setVisible(true);
  }
}
Nahlásit jako SPAM
IP: 94.142.234.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 25 hostů

Podobná vlákna

Aplikace ve VS — založil kuba

Aplikace — založil ETNyx

Aplikace z c++ — založil ovens

Aplikace — založil hanis

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý