私の入力ダイアログボックスのキャンセルボタンを押すことに関して質問があります。私は前に同様の質問をしましたので、私は自分自身を繰り返すように思えば謝ります。キャンセルボタンをクリックするshowInputDialogue
私が持っている主な問題は、私が入力を追加しなくてもキャンセルを押してもソケット接続ができても私のコードが実行されるということです。
なぜこのようなことが起こり、どうすればこの問題を回避できますか?
String input = "";
try
{
InetAddress host = InetAddress.getLocalHost();
String hostAddress = host.getHostAddress();
//setting label to host number so as to know what number to use
labHostName.setText("(" + hostAddress + ")");
input = JOptionPane.showInputDialog(null,"Please enter host name to access server(dotted number only)...see number on frame", "name", JOptionPane.INFORMATION_MESSAGE);
if(input != null && "".equals(input))//input != null && input.equals(""))
{
throw new EmptyFieldsException();
}
else if(input != null && !input.equals(hostAddress))
{
throw new HostAddressException();
}
else
{
clientSocket = new Socket(input, 7777);
私はキャンセルボタンを押しても、コードは現時点ではクライアントソケットに接続されています。なぜなら私はServerとClientを同じマシン上に2つの別個のプログラムとして持っているからでしょうか?これを避けるにはどうすればよいですか?
。 BTW - 'showInputDialogue'&' inputDialoguebox'はそのようなものはありません。もっと注意して入力してください。 –
申し訳ありません。私はそれをします – Arianule