entanglement:
O seu problema é conceitual, porque você não entendeu como é que se faz a programação orientada a eventos.
Você está pensando que, ao chamar o método tela() (que retorna um array de strings), você vai ficar parado nesse método esperando uma alma gentil e caridosa clicar o seu botão, para retornar o tal array de strings.
Se quiser fazer esse tipo de coisas, normalmente se cria um diálogo modal que tem um botão cujo evento seta um array de strings que é um membro de instância desse diálogo, e esse diálogo modal pode ter um método que retorna o tal array de strings. É mais fácil mostrar que dizer, mas estou sem tempo de escrever um exemplo agora.
Para falar a verdade, eu não diria que não entendi esta tal programação orientada a eventos, na verdade ainda não ouvi falar nela. Ou pelo menos não de modo tão tosco.
E neste caso, o clique no botão é inevitável, pois (não coloquei neste exemplo, pois aparentemente não era necessário) este método na verdade cria uma pequena janela, onde há dois campos, de texto e senha, e um botão. Onde ao clicar neste botão será retornado este array de String com os valores dos dois campos. Mais ou menos como um JOptionPane.showInputDialog(), que recebe um texto e ao clicar no botão retorna este texto.
Mas quando puder, manda um exemplo!!