Thu, 03 Aug 2006 10:31:45 +0200
Dorogi Pál <igorod.lap@t-online.hu>
Newbie
Sziasztok!
Olyan gondom lenne, hogy egy GUI-s (server/client) alkalmazast irogatok,
ahol a kliens elinditasakor
feljon egy password dialogus, majd, ha sikerul az authentikacio, akkor
megjelenik a mainwindow is.
A program - hellyel-kozel - mukodik, de a problemam vele, hogy meg soha
nem irtam meg ilyen java alkalmazast, ezert nem
tudom, hogy altalaban hogyan kezdenek neki, azaz melyik osztaly melyiket
hozza letre stb.
Ezert szeretnem a tapasztaltabbakat megkerdezni.
En ugy csinaltam meg, hogy van:
1. egy Main.java (nem GUI),
2. egy LoginDialog.java,
3. MainWindow.java.
Plusszban van meg egy Connection Manager osztaly a kapcsolat letrehozasara,
es egy Manager, amely az alkalmazas dolgait menedzseli (listenerek,
listener object-ek, stb.)
A Manager a Main.java-ban van definialva es akkor jon letre, ha az auth
sikeres volt.
A LoginDialog hoz letre egy Connection Manager-t amiben az adatokat
taroljuk ugy, mint login, password,
server nec/IP, port, statusz stb.
A Manager destructor egyik parametere a LoginDialog altal letrehozott
Connection Manager.
A MainWindow destructor egyik parametere pedig a Main altal letrehozott
Manager.
Tehat a MainWindow-ban van egy Manager osztaly, amiben van egy
Connection Manager es ez az egesz a Main-ben.
Csak ezert irok, hogy megkerdezzem azt is, hogy nem bonyolult-e ez a
modszer, vagy netalan aki irt mar kliens/szerver alkalmazast
O hogyan csinalta?
Huuuuu, egy kicsit hosszu lett, de sebaj:)
A lepesek egyszerusitve:
Main.java {
MainWindow mainwindow = new MainWindow();
LoginDialog ld = new LoginDialog(mainwindow, true);
ld.setVisible(true);
if (ld.getResult() == JOptionPane.YES_OPTION) {
Manager mgr = new CommonManager(ld.getConnect()); // Manager Factory
mainwindow.setManager(mgr);
mainwindow.setVisible(true);
} else {
JOptionPane.showMessageDialog(mainwindow, "Kilepunk mert ugye cancel-t
nyomtunk");
System.exit(0);
}
}