Ir ao conteúdo
  • Cadastre-se

vagner.santos

Membros Juniores
  • Total de itens

    4
  • Registro em

  • Última visita

  • Qualificações

    N/D

Reputação

1

Sobre vagner.santos

  • Data de Nascimento 2 de março

Informações gerais

  • Cidade e Estado
    Tucuruí/PA
  • Sexo
    Masculino
  1. Quero saber qual o método correto a se utilizar no relacionamento entre duas classes.
  2. Descrição:Simulação de Servidor Proxy de Autenticação O usuário inseri um url pré-estabelecido no browser, como resultado é redirecionado para um login de autenticação para que possa ser liberado o acesso à página solicitada. Após ser efetuado o login a página anteriormente requisitada é apresentada ao usuário. No mesmo instante essas ações serão demonstradas nos quadros de status e uma animação também apresentará o deslocamento dos pacotes entre o servidor e usuário. A dúvida é de como inserir dentro do browser um login de autenticação em acesso offline se tratando de uma simulação. Obs: Meu conhecimento em java é recente e por isso essa dificuldade. Ficarei agradecido se me ajudarem. Seguem em anexo as telas e o código package Interface; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.io.IOException; import javax.swing.BorderFactory; import javax.swing.BoxLayout; import javax.swing.JEditorPane; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextArea; import javax.swing.JTextField; import javax.swing.SwingUtilities; import javax.swing.event.HyperlinkEvent; import javax.swing.text.html.HTMLDocument; import javax.swing.text.html.HTMLFrameHyperlinkEvent; public class SwingHTMLBrowser extends JFrame { private JTextArea userStatus, serverStatus; private JPanel actions; SwingHTMLBrowser() { super("Swing HTML Browser"); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); setPreferredSize(new Dimension(600, 400)); userStatus = new JTextArea(5,5); JScrollPane userStatusPane = new JScrollPane(userStatus); userStatusPane.setBorder(BorderFactory.createTitledBorder("user Status")); userStatusPane.setPreferredSize(new Dimension(this.getPreferredSize().width/6, this.getPreferredSize().height)); serverStatus = new JTextArea(5,5); JScrollPane serverStatusPane = new JScrollPane(serverStatus); serverStatusPane.setBorder(BorderFactory.createTitledBorder("server Status")); serverStatusPane.setPreferredSize(new Dimension(this.getPreferredSize().width/6, this.getPreferredSize().height)); actions = new JPanel(); actions.add(new JLabel("actions")); actions.setPreferredSize(new Dimension(this.getPreferredSize().width, 100)); actions.setBorder(BorderFactory.createLineBorder(Color.red)); add(actions, BorderLayout.NORTH); JPanel secondaryPane = new JPanel(); secondaryPane.setLayout(new BoxLayout(secondaryPane, BoxLayout.X_AXIS)); secondaryPane.add(userStatusPane); secondaryPane.add(serverStatusPane); secondaryPane.add(new Browser()); add(secondaryPane, BorderLayout.CENTER); pack(); } public static void main(String args[]) { SwingUtilities.invokeLater(() -> new SwingHTMLBrowser().setVisible(true)); } } class Browser extends JPanel { private JTextField addressBar; private JEditorPane pane; public Browser() { setLayout(new BorderLayout()); addressBar = new JTextField(); pane = new JEditorPane(); pane.setEditable(false); addressBar.addActionListener(e -> { String url = addressBar.getText(); try { pane.setPage(url); } catch (IOException t) { t.printStackTrace(); } }); pane.addHyperlinkListener(evt -> { if (evt.getEventType() != HyperlinkEvent.EventType.ACTIVATED) { return; } JEditorPane srcPane = (JEditorPane) evt.getSource(); if (evt instanceof HTMLFrameHyperlinkEvent) { HTMLDocument doc = (HTMLDocument) pane.getDocument(); doc.processHTMLFrameHyperlinkEvent((HTMLFrameHyperlinkEvent) evt); } else { String url = evt.getURL().toString(); addressBar.setText(url); try { pane.setPage(url); } catch (Throwable t) { t.printStackTrace(); } } }); add(addressBar, BorderLayout.NORTH); add(new JScrollPane(pane)); } }
  3. @devair1010 /*Este é o código de um browser. Devido o projeto ser uma simulação de servidor proxy com acesso offline, terei que adaptar este código posteriormente. A questão é que quando executo, por exemplo este código, ele não carrega dentro do Jframe único, e sim fora. Justamente o que deve ser evitado.*/ package Interface; import java.awt.*; import java.awt.event.*; import java.io.IOException; import javax.swing.*; import javax.swing.event.*; import javax.swing.text.html.*; public class SwingHTMLBrowser extends JFrame implements ActionListener, HyperlinkListener { public JTextField addressBar; public JEditorPane pane; SwingHTMLBrowser() { super("Swing HTML Browser"); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); addressBar = new JTextField(); addressBar.addActionListener(this); pane = new JEditorPane(); pane.setEditable(false); pane.addHyperlinkListener(this); add(addressBar, BorderLayout.NORTH); add(new JScrollPane(pane)); setSize(new Dimension(300,300)); } public void actionPerformed(ActionEvent evt) { String url = addressBar.getText(); try { pane.setPage(url); } catch (IOException t) { t.printStackTrace(); } } @Override public void hyperlinkUpdate(HyperlinkEvent evt) { if (evt.getEventType() != HyperlinkEvent.EventType.ACTIVATED) { return; } JEditorPane srcPane = (JEditorPane)evt.getSource(); if (evt instanceof HTMLFrameHyperlinkEvent) { HTMLDocument doc = (HTMLDocument)pane.getDocument(); doc.processHTMLFrameHyperlinkEvent((HTMLFrameHyperlinkEvent)evt); } else { String url = evt.getURL().toString(); addressBar.setText(url); try { pane.setPage(url); } catch (Throwable t) { t.printStackTrace(); } } } public static void main(String args[]) { SwingHTMLBrowser browser = new SwingHTMLBrowser(); browser.setVisible(true); } }
  4. Estou elaborando um projeto que simula um servidor Proxy com autenticação, mas tenho algumas dúvidas na questão da interface do Java Fx. Gostaria de saber como fazer ou qual método correto para se colocar interfaces dentro de uma outra interface principal JFrame? Segue em anexo o esboço do modelo. Desde já agradeço qualquer atenção.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×