[Resolvido]Controle de JInternalFrame

4 respostas
edu_merckx

Estou trabalhando com JDesktopPane e JInternalFrame. Para controlar os limites do JInternalFrame (evitar o ‘vazamento’ dento do mdi) eu implementei o seguinte código:

@Override
	public void componentMoved(ComponentEvent e) {
		if(tela.getX() < 0)
			tela.setLocation(0, tela.getY());
		if(tela.getY() < 0)
			tela.setLocation(tela.getX(), 0);
		if((tela.getX() + tela.getWidth()) > this.getWidth())
			tela.setLocation(this.getWidth() - tela.getWidth() - 8, tela.getY());
		if((tela.getY() + tela.getHeight()) > this.getHeight())
			tela.setLocation(tela.getX(), this.getHeight() - tela.getHeight() - 50);		
	}

onde tela é o meu JInternalFrame…

Desse jeito resolvi o problema, mas gostaria de saber se poderia implementar de outra forma, setando alguma propriedade do desktopPane ou do internalFrame…

4 Respostas

ViniGodoy

Não, o máximo que vc encontra são implementações de JDesktopPane com scrollbars.

Esse é mais um dos motivos para não se usar JInternalFrames.

edu_merckx

Vini, o que eu poderia usar no lugar de JInternalFrame?

ViniGodoy

O JFrame e o JDialog, ou então o SplitPane (para fazer abas). O fato é que nem a MS usa formulários MDI mais hoje em dia.

edu_merckx

Valeu Vini… Vou pesquisar mais sobre o assunto…

Criado 14 de dezembro de 2010
Ultima resposta 15 de dez. de 2010
Respostas 4
Participantes 2