• Olá Visitante, se gosta do forum e pretende contribuir com um donativo para auxiliar nos encargos financeiros inerentes ao alojamento desta plataforma, pode encontrar mais informações sobre os várias formas disponíveis para o fazer no seguinte tópico: leia mais... O seu contributo é importante! Obrigado.

[Visual C#] Criar um web Browser

edu_fmc

GForum VIP
Entrou
Fev 29, 2008
Mensagens
21,260
Gostos Recebidos
14
PHP:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace EdBrowser
{
    public partial class JanelaPrincipal : Form
    {
        public JanelaPrincipal()
        {
            InitializeComponent();
        }

        private void sobreToolStripMenuItem_Click(object sender, EventArgs e)
        {
            AboutBox form = new AboutBox();
            form.ShowDialog();
        }

        private void sairToolStripMenuItem_Click(object sender, EventArgs e)
        {
            DialogResult res;
            res = MessageBox.Show("Terminar a Navegação?", "Sair?", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
            if (res == DialogResult.Yes)
            {
                Application.Exit();
            }
        }

        private void tstbUrl_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                WebBrowser wb = new WebBrowser();
                wb = (WebBrowser)tabControl.SelectedTab.Controls[0];
                wb.Navigate(tstbUrl.Text);
            }
        }

        private void JanelaPrincipal_Load(object sender, EventArgs e)
        {
            AbrirNovaAba();
        }

        private void AbrirNovaAba()
        {
            //Declara uma nova TabPage e um novo Web Browser
            TabPage NovaAba = new TabPage();
            WebBrowser NovaWeb = new WebBrowser();

            //Expande o WebBrowser e altera o seu texto
            NovaWeb.Dock = DockStyle.Fill;
            NovaAba.Text = "Browser " + (tabControl.TabPages.Count + 1);

            //Adiciona o controlo WebBrowser à TabPage
            NovaAba.Controls.Add(NovaWeb);
            //Adiciona o controlo TabPage ao tabControl
            tabControl.TabPages.Add(NovaAba);

            //Declara dois procedimentos de eventos ao conjunto WebBrowser
            NovaWeb.Navigating += new System.Windows.Forms.WebBrowserNavigatingEventHandler(webBrowser_Navigating);

            NovaWeb.DocumentCompleted += new System.Windows.Forms.WebBrowserDocumentCompletedEventHandler(webBrowser_DocumentCompleted);
        }

        //Ocorre antes do controlo WebBrowser começar a navegar
        private void webBrowser_Navigating(object sender, WebBrowserNavigatingEventArgs e)
        {
            //Altera o texto da Label da StatusStrip
            sslblPronto.Text = "A Carregar: " + e.Url.Host.ToString();

            //Atribui ao ProgressBar o valo mínimo...
            sspbEstado.Value = sspbEstado.Minimum;
            //... e torna-o visivel
            sspbEstado.Visible = true;
        }

        //Ocorre quando o controlo WebBrowser terminar de carregar uma página Web
        private void webBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            WebBrowser wb = new WebBrowser();
            wb = (WebBrowser)tabControl.SelectedTab.Controls[0];

            tabControl.SelectedTab.Text = wb.DocumentTitle;
            sspbEstado.Visible = false;
        }

        private void novaAbaToolStripMenuItem_Click(object sender, EventArgs e)
        {
            AbrirNovaAba();
        }

        private void fecharAbaActivaToolStripMenuItem_Click(object sender, EventArgs e)
        {
            //Se existir mais do que um Tab, remove o seleccionado
            if (tabControl.TabPages.Count > 1)
                tabControl.TabPages.Remove(tabControl.SelectedTab);
        }

        private void abrirEndereçoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            //Selecciona o texto da TextBox
            tstbUrl.SelectionStart = 0;
            tstbUrl.SelectionLength = tstbUrl.Text.Length;

            //Dá o foco ao controlo TextBox
            tstbUrl.Focus();
        }

        private void retrocederToolStripMenuItem_Click(object sender, EventArgs e)
        {
            WebBrowser wb;
            wb = (WebBrowser)this.tabControl.SelectedTab.Controls[0];
            wb.GoBack();
        }

        private void avançarToolStripMenuItem_Click(object sender, EventArgs e)
        {
            WebBrowser wb;
            wb = (WebBrowser)this.tabControl.SelectedTab.Controls[0];
            wb.GoForward();
        }

        private void navegarToolStripMenuItem_Click(object sender, EventArgs e)
        {
            WebBrowser wb;
            wb = (WebBrowser)this.tabControl.SelectedTab.Controls[0];

            //Quando o Browser não tem para onde retroceder
            if (wb.CanGoBack)
                retrocederToolStripMenuItem.Enabled = true;
            else
                retrocederToolStripMenuItem.Enabled = false;

            //Quando o Browser não tem para onde avançar
            if (wb.CanGoForward)
                avançarToolStripMenuItem.Enabled = true;
            else
                avançarToolStripMenuItem.Enabled = false;

        }

        private void actualizarToolStripMenuItem_Click(object sender, EventArgs e)
        {
            WebBrowser wb;
            wb = (WebBrowser)this.tabControl.SelectedTab.Controls[0];
            wb.Refresh();
        }
    }
}




Produto final:

Semttulo-13.jpg
 

pablo_fortez

Novo
Membro Inactivo
Entrou
Mai 23, 2010
Mensagens
1
Gostos Recebidos
0
podias me enviar este programa para o meu mail...email aqui nao
 
Última edição por um moderador:

Doghin

GF Bronze
Membro Inactivo
Entrou
Jun 8, 2013
Mensagens
2
Gostos Recebidos
0
Bom dia, gostaria também do projeto. Pode me enviar pelo email xxxxxxxxxxxxxxxxxxxxxx(emiasl aqui nao).

Muito Obrigado!
 
Última edição por um moderador:

quevork

GF Bronze
Membro Inactivo
Entrou
Jun 9, 2013
Mensagens
10
Gostos Recebidos
0
Eu uso Java. C++ acho mais complicado.
 

Doghin

GF Bronze
Membro Inactivo
Entrou
Jun 8, 2013
Mensagens
2
Gostos Recebidos
0
Isso não é C++, mas sim C#

É diferente um do outro!
 
Topo