Gostaria de saber se é possível chamar o ie ou outro brownser dentro de um jframe
para q seje a página inicial. Só conseguir usar o comando de chamar o brownser mas gostaria q ficasse dentro.
Ou será q vou ter q criar um mini brownser, mas fugirá dos meus conhecimentos atuais. É para tcc no fim do ano…
Obrigado!!
Chamar brownser dentro de um jframe [NÃO RESOLVIDO]
8 Respostas
Tente isso:
1º Baixe e adicione o plugin SwingX ao CLASSPATH de seu projeto
2º No componente JXHyperLink, no seu action, coloque o seguinte código:
try{
Desktop d = Desktop.getDesktop();
d.browse(new URI("endereço web"));
}
catch(Exception e){
e.prinsStackTrace();
}
baixei o plugin, mas, desculpe minha ignorância, não sei o q é JXHyperlink e colocaria no action
ou na classe main para abrir junto do programa. Poderia me ajudar com isso por favor, sou novo porém esforçado
Só pra lembrar o q to querendo fazer é um programa comum porém quando ele abrir ,
o primeiro frame é o dá minha página.
Com uma grande ajuda consegui rodar algumas paginas num JEditorpane.
Porém as páginas ficam com mal funcionamento e ruins visivelmente.
Será q tem como melhorar isto ou não tem como.
Minha idéia é essa, criar um mini brownser dentro da aplicação, na verdade nem precisava criar
se der pra chamar um pronto(como ie) pra dentro do frame, se não fosse este problema estaria perfeito.
import java.awt.Toolkit;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import javax.swing.JEditorPane;
import javax.swing.JScrollPane;
import javax.swing.event.HyperlinkListener;
public class AbrirHtml extends javax.swing.JFrame {
/** Creates new form AbrirHtml */
public AbrirHtml() {
initComponents();
this.url();
}
public void url() {
try {
URL yahoo = new URL("http://www.google.com.br");
URLConnection yahooConnection = yahoo.openConnection();
yahooConnection.connect();
jEditorPane1.setContentType("text/html");
jEditorPane1.setEditable(false);
jEditorPane1.setPage(yahoo);
} catch (MalformedURLException e) { // new URL() failed
e.getMessage();
} catch (IOException e) { // openConnection() failed
e.getMessage();
}
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jScrollPane1 = new javax.swing.JScrollPane();
jEditorPane1 = new javax.swing.JEditorPane();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jScrollPane1.setViewportView(jEditorPane1);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 1151, Short.MAX_VALUE)
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 458, Short.MAX_VALUE)
.addContainerGap())
);
pack();
}// </editor-fold>
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new AbrirHtml().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JEditorPane jEditorPane1;
private javax.swing.JScrollPane jScrollPane1;
// End of variables declaration
}
Alguem sabe se da pra melhorar?
Melhorar alguma coisa sempre dá, mas o Swing em geral não lhe fornece um bom suporte a páginas Web.
Qualquer feature Javascript-Ajax será um tormento para você.JEditorPane só serve para coisas muitos simples.
Se vc realmente quer usar um browser embutido na sua app, talvez seja melhor usar SWT.
Tudo bem , mas vc por favor tem algum exemplo pra q eu possa partir pois não sei por onde começar.
A minha dúvida é essa como embutir . Poderia me explicar???
Alguem pode me ajudar como utilizar o SWT neste caso?
Já ouviram falar o DJ Swing?
Dá uma olhada na coluna de Java desse mês na Informit:
http://www.informit.com/guides/content.aspx?g=java&seqNum=521
Quando li não pude deixar de lembrar de você.
Mas vou avisando, o que você quer não costuma a ser tão simples assim.
Especialmente se você estiver imaginando um firefox completo na página inicial do seu JFrame…