1) Você pode determinar os tamanhos da tabela usando a classe TableColumn e desabilitando a criação automática de colunas pelo Model:
//Crie um objeto do tipo TableColumn
TableColumn colProduct = new TableColumn();
//Defina o seu tamanho
colProduct.setPreferredWidth(280);
//Associe a coluna ao índice dela no seu model
colProduct.setModelIndex(0);
//Associa o column a sua tabela
suaTabela.setAutoCreateColumnsFromModel(false);
suaTabela.addColumn(colProduct);
2. Em primeiro lugar, não use o DefaultTableModel. Crie um model seu, que trabalhe com objetos da classe que você está apresentando na tela. Depois, basta adicionar um MouseListener na sua tabela. Se for um clique só, é melhor usar um SelectionListener.
suaTabela.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent evt) {
if (evt.getClickCount() == 2) //O usuário deu 2 cliques?
//Chama seu método para preencher os campos
fillFields(seuModel.get(suaTabela.getSelectedRow()));
}
}
}
3) Dê uma olhada no tutorial do GUJ, controlando um JTextField, e no método toUpperCase da classe String.
4) Novamente, veja o item 3.
5) Se você quer isso para criar um botão default, use o seguinte código:
getRootPane().setDefaultButton(umBotaoQualquer);
Esse botão terá um desenho mais forte e será acionado com o enter, a partir de qualquer ponto do seu form.
Se a sua idéia é simplesmente usar o enter e outras teclas (como numa calculadora), dê uma olhada neste tópico.
6) Crie seu próprio TableModel. Há informações sobre isso nos artigos do GUJ e aqui na página da Sun:
http://java.sun.com/docs/books/tutorial/uiswing/components/table.html#data