Algumas duvidas no meu codigo

Estou desenvolvendo um codigo, mas está dando alguns erros que não consigo achar o erro. Vou listar as minhas perguntas e depois logo abaixo posto o codigo que escrevi.

Dentro de um GridLayout inseri tres radiobuttons e quatro menus de lista.
Os dois últimos menus de lista não estão aparecendo aquelas setinhas do lado direito que permite fazer a rolagem do menu de lista.

Uma outra dúvida que possuo se refere ao proprio gridlayout. Quando a gente cria ele definimos o numero de linhas, colunas e os espacamentos vertical e horizontal.

Só que o espaço horizontal entre os radiobuttons e os menus de lista estão muito longe um dos outros, o que permite que não seja necessário clicar em cima propriamente do objeto radiobutton, pode-se clicar em algum lugar da linha onde está o objeto na area do grid que funcionará do mesmo jeito… Gostaria que funcionasse apenas quando o usuário clicar em cima do objeto…

Para entender tudo o que disse seria necessario rodar o programa para ver como ficou, por isto aí vai o codigo dele.
Observação: é um AppletViewer que estou fazendo…

[code]
import java.awt.;
import java.awt.event.
;
import javax.swing.;
import javax.swing.event.
;
public class PalavraChave extends JApplet implements ListSelectionListener, ActionListener, ItemListener
{

JPanel P2;
JRadioButton radio1, radio2, radio3;
JList ListaOrgaosFederal, ListaOrgaosEstadual, ListaOrgaosMunicipal, ListaNormas;

ButtonGroup radiogroup;
DefaultListModel lista1, lista2, lista3, lista4;

public void init()
{

getContentPane().setLayout(new GridLayout(4,2,1,1));
P2 = new JPanel();
P2.setLayout(new GridLayout(4,2,1,1));

P2.setBackground(new Color(200,200,200));

radio1 = new JRadioButton("Legislação Federal");     radio1.addItemListener(this);
radio2 = new JRadioButton("Legislação Estadual");    radio2.addItemListener(this);
radio3 = new JRadioButton("Legislação Municipal");   radio3.addItemListener(this);

radio1.setMnemonic(KeyEvent.VK_1);
radio2.setMnemonic(KeyEvent.VK_2);
radio3.setMnemonic(KeyEvent.VK_3);



lista1 = new DefaultListModel();
lista1.addElement("PE - Poder Executivo");
lista1.addElement("PL - Poder Legislativo");
lista1.addElement("SRF - Secretaria da Receita Federal");

ListaOrgaosFederal = new JList(lista1);
ListaOrgaosFederal.addListSelectionListener(this);
JScrollPane ListaFederal = new JScrollPane(ListaOrgaosFederal);



lista2 = new DefaultListModel();
lista2.addElement("PE - Poder Executivo");
lista2.addElement("PL - Poder Legislativo");
	
ListaOrgaosEstadual = new JList(lista2);
ListaOrgaosEstadual.addListSelectionListener(this);
JScrollPane ListaEstadual = new JScrollPane(ListaOrgaosEstadual);



lista3 = new DefaultListModel();
lista3.addElement("PE - Poder Executivo");
lista3.addElement("PL - Poder Legislativo");
lista3.addElement("Secretaria");
	
ListaOrgaosMunicipal = new JList(lista3);
ListaOrgaosMunicipal.addListSelectionListener(this);
JScrollPane ListaMunicipal = new JScrollPane(ListaOrgaosMunicipal);




lista4 = new DefaultListModel();
lista4.addElement("Decretos");
lista4.addElement("Leis");
lista4.addElement("Medidas Provisórias");
	
ListaNormas = new JList(lista4);
ListaNormas.addListSelectionListener(this);
JScrollPane ListaTodasNormas = new JScrollPane(ListaNormas);

radiogroup = new ButtonGroup();
radiogroup.add(radio1);
radiogroup.add(radio2);
radiogroup.add(radio3);

P2.add(radio1);
P2.add(ListaFederal);

P2.add(radio2);
P2.add(ListaEstadual);


P2.add(radio3);
P2.add(ListaOrgaosMunicipal);
P2.add(ListaNormas);

getContentPane().add(P2);

}

 public void itemStateChanged(ItemEvent e) { 

}

public void actionPerformed(ActionEvent e){
}

public void valueChanged(ListSelectionEvent e){
}
}

[/code]

Agora o codigo do appletviewer:


<html>
<APPLET code="PalavraChave.class" width = 600 height = 200>
</APPLET>
</html>

OI

Halfar, em alguns momentos, se tu quiser um nivel de detalhes muito grande no interface, é melhor fazer tudo sem gerenciador de Layout e setar tudo no setBounds ou setSize e setLocation. :slight_smile:

T+

Obrigado pela dica… Vou usar isto tambem. mas to com a pulga atras da orelha… porque não está aparecendo as setinhas para poder fazer a rolagem nos dois ultimos objetos??

Se tiver alguem que manja bem aí, da uma olhadinha no meu codigo, roda ele e veja o que estou dizendo… ( executando o codigo é mais facil de entender o que estou dizendo)…

Obrigado.