Ola,
Olhei no Javadoc de Dimension e nao fala se usa pixel, caracter, etc. Qual a unidade de medida precisa dele? Alias, por falar nisso, usar o setPreferredSize() é bem chato para dimensionar um campo, pois tem que ficar chutando um valor ate achar um tamanho aceitavel. Deve ser pixel isso, certo?