JOptionPane com múltiplas entradas em diferentes linhas

Eu gostaria de criar umJOptionPane que permite ao usuário selecionar um endereço IP e uma porta para se conectar. Deve ser estruturado como tal,

Endereço IP: [campo de texto aqui]

Porto: [campo de texto aqui]

Cancelar OK

Os rótulos devem estar alinhados à esquerda e os campos de texto também devem estar alinhados à esquerda. Eu não posso modelar o storyboard aqui, mas basicamente os campos de texto não devem estar desalinhados, mesmo se houver um espaço entre os rótulos e os campos de texto.

Cada rótulo e par de campos de texto deve estar em linhas separadas, e os botões Cancelar OK devem estar alinhados à direita, abaixo das caixas de texto.

Existe alguma maneira de fazer isso no código?

questionAnswers(2)

yourAnswerToTheQuestion