Olá pessoa …estou desenvolvendo um aplicativo em java mais as minhas interfaces são bastante simples…
queria eu uma ajuda ou uma pequena explicação sobre JDesktoppane ?? ou seja como utili-lo na aplicação
sei que os internalFrame ficam Dentro dele…
uma das minha pergunta é …ele fica Dentro dele ??
ele fica sobre o jframe…pegando toda a tela …desde já agradeço.
Uh-uh - se você puder, evite usar JDesktopPane.
A tendência de você fazer aplicações que são difíceis de controlar é muito grande usando-se isso; em vez disso, use algo como um JTabbedPane.
É que JDesktopPane é um jeito “antigo” de desenvolver aplicações, chamado MDI - nem o MS Office usa o MDI por default hoje em dia, porque é bem difícil para o próprio usuário mexer com esse monte de janelas “soltas”.
alexcomput
A idéia do thingol é bastante interessante; o software irá ficar com um visual bem parecido com vários softwares que vemos hoje por ai.
Mas respondendo a sua dúvida…A instancia da classe JDesktopPane é anexada a uma instancia da classe JFrame e as instancias da classe JInternalFrame são anexadas na instancia do JDesktopPane. Resumindo: myFrame <- myDeskTopPane <- myInternalFrame.
flws
Alex, eu utilizo o JDesktopPane.
A Lógica é a seguinte:
Você tem seu JFrame principal e um JMenuBar com seus JMenuItens, por exemplo.
No JFrame você deve adicionar um JDesktopPane… e nesse JDesktopPane são adicionados os JIternalFrames, que podem ser chamados através de seus JMenuItens…
É um modo muito eficiente de se trabalhar… utilizo aqui e não tenho problemas.
Se tiver mais dúvidas, eu vo tentar te ajudar…
Vlw!
Alguém aqui sabe como colocar um Logotipo na 1ª tela de uma aplicação MDI para não ficar aquela tela em branco?
Eu usei um jLabel e coloquei um logotipo do projeto em jpg, mas não consigo centralizar isso na aplicação MDI… quando eu executo a aplicação a imagem fica
posicionada meio a esquerda da aplicação.
Alguém já fez isso?
ps. Coloquei esta dúvida neste tópico, pois não consegui criar um no tópico para minha dúvida.
Atte.
Oi Andre859,
Tente colocar a imagem em background no JFrame.
Eis aqui um exemplo: [url]http://www.jguru.com/faq/view.jsp?EID=9691[/url]
flws
Eu testei o código, mas não dá certo… pois, a aplicação MDI tem no JFrame um jDeskTopPane que não aceita nenhum tipo de layout… então não é possível centralizar uma imagem usando isso, mas continuo procurando uma outra alternativa.
Obrigado
Oi!
Mas a idéia continua…
Tem esse link aqui bacaninha tambem: http://preclog.blogspot.com/2007/10/imagem-de-fundo-em-um-jdesktoppane.html
Eu testei o código indicado no link e funcionou.
public class BackgroundedDesktopPane extends JDesktopPane {
Image img;
public BackgroundedDesktopPane() {
try {
java.net.URL caminho = BackgroundedDesktopPane.class.getResource("aquario_linux.jpg");
img = javax.imageio.ImageIO.read(caminho);
} catch (Exception e) {
}
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
if (img != null)
g.drawImage(img, 0, 0, this.getWidth(), this.getHeight(), this);
else
g.drawString("Imagem não encontrada", 50, 50);
}
}
public class DeskTop extends JFrame {
public DeskTop() {
super.setSize(900, 500);
super.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
super.setLocationRelativeTo(null);
super.add(new BackgroundedDesktopPane());
super.setVisible(true);
}
public static void main( String[] args ) {
DeskTop dst = new DeskTop();
}
}
flws