Matrirxp 0 Denunciar post Postado Março 21, 2015 Ola vocês podem me ajudar quero fazer um navegador em java ja tentei de varias formas mais nunca consigo Compartilhar este post Link para o post Compartilhar em outros sites
reebr 94 Denunciar post Postado Março 21, 2015 Posta o que tentou, mesmo que esteja errado ou incompleto. Compartilhar este post Link para o post Compartilhar em outros sites
Matrirxp 0 Denunciar post Postado Março 22, 2015 import java.awt.*; import java.awt.event.*; import java.net.*; import java.util.*; import javax.swing.*; import javax.swing.event.*; import javax.swing.text.html.*; // Web browser public class MiniBrowser extends JFrame implements HyperlinkListener { // Estes são os botões para iteração com a lista de páginhas private JButton backButton, forwardButton; // Campo para digitar o endereço. private JTextField locationTextField; // Editor pane for displaying pages. private JEditorPane displayEditorPane; // Lista de páginas ja visitadas pelo browser. private ArrayList pageList = new ArrayList(); // Construtor do Mini Web Browser. public MiniBrowser() { // Configura título da aplicação. super("Mini Browser"); // Configura tamanho da janela. setSize(640, 480); // Manipulador de eventos. addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { actionExit(); } }); // Configura o menu file. JMenuBar menuBar = new JMenuBar(); JMenu fileMenu = new JMenu("File"); fileMenu.setMnemonic(KeyEvent.VK_F); JMenuItem fileExitMenuItem = new JMenuItem("Exit", KeyEvent.VK_X); fileExitMenuItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { actionExit(); } }); fileMenu.add(fileExitMenuItem); menuBar.add(fileMenu); setJMenuBar(menuBar); // Configura os botões do painel. JPanel buttonPanel = new JPanel(); backButton = new JButton("< Back"); backButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { actionBack(); } }); backButton.setEnabled(false); buttonPanel.add(backButton); forwardButton = new JButton("Forward >"); forwardButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { actionForward(); } }); forwardButton.setEnabled(false); buttonPanel.add(forwardButton); locationTextField = new JTextField(35); locationTextField.addKeyListener(new KeyAdapter() { public void keyReleased(KeyEvent e) { if (e.getKeyCode() == KeyEvent.VK_ENTER) { actionGo(); } } }); buttonPanel.add(locationTextField); JButton goButton = new JButton("GO"); goButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { actionGo(); } }); buttonPanel.add(goButton); // Configura o espaço da página. displayEditorPane = new JEditorPane(); displayEditorPane.setContentType("text/html"); displayEditorPane.setEditable(false); displayEditorPane.addHyperlinkListener(this); getContentPane().setLayout(new BorderLayout()); getContentPane().add(buttonPanel, BorderLayout.NORTH); getContentPane().add(new JScrollPane(displayEditorPane), BorderLayout.CENTER); } // Saída do programa. private void actionExit() { System.exit(0); } // Este método permite a volta para a última página visitada. private void actionBack() { URL currentUrl = displayEditorPane.getPage(); int pageIndex = pageList.indexOf(currentUrl.toString()); try { showPage( new URL((String) pageList.get(pageIndex - 1)), false); } catch (Exception e) {} } // Método que permite voltar para a página atual. private void actionForward() { URL currentUrl = displayEditorPane.getPage(); int pageIndex = pageList.indexOf(currentUrl.toString()); try { showPage( new URL((String) pageList.get(pageIndex + 1)), false); } catch (Exception e) {} } // Carrrega e apresenta a página especificada no campo de texto. private void actionGo() { URL verifiedUrl = verifyUrl(locationTextField.getText()); if (verifiedUrl != null) { showPage(verifiedUrl, true); } else { showError("Invalid URL"); } } // Apresenta mensagem de erro em uma caixa de diálogo. private void showError(String errorMessage) { JOptionPane.showMessageDialog(this, errorMessage, "Error", JOptionPane.ERROR_MESSAGE); } // Verifica o formato da URL. private URL verifyUrl(String url) { // Só permite URLs HTTP. if (!url.toLowerCase().startsWith("http://")) return null; // Verifica o formato da URL. URL verifiedUrl = null; try { verifiedUrl = new URL(url); } catch (Exception e) { return null; } return verifiedUrl; } /* Mostra página solicitada e adiciona ela à lista de páginas visitadas. */ private void showPage(URL pageUrl, boolean addToList) { // Modifica o cursor do mouse. setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); try { // Obtém URL da página mostrada atualmente. URL currentUrl = displayEditorPane.getPage(); // Carrega e exibe página desejada. displayEditorPane.setPage(pageUrl); // Obtém URL da nova página sendo exibida. URL newUrl = displayEditorPane.getPage(); // Adiciona página à lista de páginhas visitadas. if (addToList) { int listSize = pageList.size(); if (listSize > 0) { int pageIndex = pageList.indexOf(currentUrl.toString()); if (pageIndex < listSize - 1) { for (int i = listSize - 1; i > pageIndex; i--) { pageList.remove(i); } } } pageList.add(newUrl.toString()); } // Atualiza o campo de entrada da URL com a página atual. locationTextField.setText(newUrl.toString()); // Atualiza os botões. updateButtons(); } catch (Exception e) { // Apresenta mensagem de erro. showError("Unable to load page"); } finally { // Retorna para o cursor padrão. setCursor(Cursor.getDefaultCursor()); } } /* Atualiza os botões back e forward baseado na página que está sendo apresentada exibida. */ private void updateButtons() { if (pageList.size() < 2) { backButton.setEnabled(false); forwardButton.setEnabled(false); } else { URL currentUrl = displayEditorPane.getPage(); int pageIndex = pageList.indexOf(currentUrl.toString()); backButton.setEnabled(pageIndex > 0); forwardButton.setEnabled( pageIndex < (pageList.size() - 1)); } } // Manipulador de hyperlink's clicados. public void hyperlinkUpdate(HyperlinkEvent event) { HyperlinkEvent.EventType eventType = event.getEventType(); if (eventType == HyperlinkEvent.EventType.ACTIVATED) { if (event instanceof HTMLFrameHyperlinkEvent) { HTMLFrameHyperlinkEvent linkEvent = (HTMLFrameHyperlinkEvent) event; HTMLDocument document = (HTMLDocument) displayEditorPane.getDocument(); document.processHTMLFrameHyperlinkEvent(linkEvent); } else { showPage(event.getURL(), true); } } } // Executa o Mini Browser. public static void main(String[] args) { MiniBrowser browser = new MiniBrowser(); browser.show(); } } Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Março 22, 2015 Cara, nada contra copiar código p/ entender como as coisas interagem, mas considerando o seguinte: - Teu perfil diz que você tem 12 anos (isso se não é dado falso, já que não há polícia na internet verificando RG); - O código é igual ao encontrado no GUJ (http://www.guj.com.br/java/225024-mini-browser-em-java-ajuda-com-permicao-para-applets) e no JavaFree (http://javafree.uol.com.br/topic-864180-Browser.html); - A sua resposta a um dos problemas citados neste tópico linkado está incorreta; - Você posta código Java num fórum de C/C++; - O código de AI parece ser um script copiado completamente de algum tutorial do Unity e você não descreve o problema que acontece (simplesmente diz que dá erro). Dá a impressão de que você é novato em programação. Se for o caso, eu sugiro que avalie a diferença entre essas duas situações: 1- Copiar e colar códigos alheios e não ter condições de consertar ou modificar devido à falta de conhecimento (tanto na linguagem quanto teórico); 2- Criar o próprio código de forma livre Se você pretende seguir a #2, pare agora o que você está fazendo e faça o seguinte: 1- Leia livros sobre a linguagem que você quer aprender. É Java? Tem o Core Java (2 volumes, mas leia o 1o), o Big Java (Cay Horstmann), Absolute Java (Walter Savitch), Effective Java (Joshua Bloch), o Head First Java (Kathy Sierra) e mais alguns que eu não consigo lembrar. 2- Faça os exercícios básicos. Todo mundo começa do básico. Mesmo durante os 11 anos que se passa em colégio é assim. Programação não é diferente. Compartilhar este post Link para o post Compartilhar em outros sites
Matrirxp 0 Denunciar post Postado Março 22, 2015 nao é eu tenho 12 Compartilhar este post Link para o post Compartilhar em outros sites