У меня есть вопрос относительно нажатия кнопки отмены моего вводаDialoguebox. Я задал аналогичный вопрос, прежде чем я прошу прощения, если я, кажется, повторяюсь.Нажатие кнопки отмены 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);
Так с кода, так оно и есть на данный момент соединение ClientSocket производится даже если я нажмите отменить. Является ли причиной этого, возможно, потому, что у меня есть Сервер и Клиент как две отдельные программы на одной машине? Как я могу избежать этого?
Для лучшей помощи раньше, опубликовать [SSCCE] (http://sscce.org/). BTW - 'showInputDialogue' и' inputDialoguebox' нет таких вещей. Пожалуйста, будьте внимательнее печатайте сообщения. –
Извините. Я сделаю это – Arianule