Isso se chama “tentar processar sua aplicação na mesma thread que é usada para a GUI”. Esse problema não é trivial de resolver.
Não há uma API do tipo “DoEvents” que existe no VB; em vez disso, você precisa usar o tal do SwingWorker.
De qualquer maneira, tente ver se você iniciar sua aplicação usando EventQueue.invokeLater ajuda um pouco.
Em vez de fazer (new MinhaJFrame()).show() no seu programa principal, você pode tentar algo como:
public static void main(String[] args) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new MinhaJFrame().setVisible(true);
}
});
}