こんにちは私はCardLayoutと3枚のカードを備えたJframeを持っています。最初のカードのボタンにActionListenerがあります。
このコードはうまく機能しています:
JButton btnLogin = new JButton("Login");
btnLogin.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
CardLayout cl = (CardLayout)(cards.getLayout());
cl.show(cards, "wait");
}
}
問題は、サーバーにログインするためのコードを追加するときです(xmppクライアントを開発しています)。
JButton btnLogin = new JButton("Login");
btnLogin.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
CardLayout cl = (CardLayout)(cards.getLayout());
cl.show(cards, "wait");
xmppManager = new Xmpp("jabberserver", 5222);
try {
xmppManager.init();
} catch (XMPPException e) {
e.printStackTrace();
}
cl.show(cards, "userList");
}
}
基本的に、ユーザーがログインボタンを押してログインしたときに「お待ちください」カードを表示してから、別のカードを表示する必要があります。ただし、この場合、「待機」カードは表示されず、ログインを実行し(約5秒かかります)、最後のカード「userList」を直接表示します。
私が欠けているものは何ですか?