| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2102 人关注过本帖
标题:关于浏览器axwebbrowser的各种问题
只看楼主 加入收藏
炫色流年
Rank: 2
等 级:论坛游民
帖 子:61
专家分:18
注 册:2011-8-8
结帖率:38.46%
收藏
已结贴  问题点数:20 回复次数:4 
关于浏览器axwebbrowser的各种问题
程序代码:
 private void btnGo_Click(object sender, EventArgs e)  //这是按下“转到”键触发的事件
        {
            if (cmbURL.Text == "") //cmbURL为输入网址的列表框
            {
                MessageBox.Show("这请输入网址!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning );
                return;
            }
           
            if (cmbURL.Text == "about:blank")
            {
                MessageBox.Show("这是空白页,请输入网址!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
           
            string str=cmbURL .Text ;
           
            if (str.Substring(0, 7) != "http://")
            {
                cmbURL.Text = "http://" + cmbURL.Text;
            }
           
            Weber1.Navigate(cmbURL.Text);
            cmbURL.Text = Convert.ToString(Weber1.LocationURL);
        }


//以下是工具栏上一系列按键的操作
        


private void toolButton1_Click(object sender, EventArgs e) //这是“后退”键
        {
            try
            {
                Weber1.GoBack();
            }
            catch
            {
                MessageBox.Show("已经是最后一页!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            finally
            {
                cmbURL.Text = Convert.ToString(Weber1.LocationURL);
            }
        }

        private void toolButton2_Click(object sender, EventArgs e)//这是 前进 键
        {
            try
            {
                Weber1.GoForward ();
            }
            catch
            {
                MessageBox.Show("已经是最前一页!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            finally
            {
                cmbURL.Text = Convert.ToString(Weber1.LocationURL);
            }
        }


        private void toolButton3_Click(object sender, EventArgs e) //这是 停止 键
        {
            if (cmbURL.Text == "") return;
            if (cmbURL.Text == "about:blank") return;
            Weber1.Stop();
            cmbURL.Text = Convert.ToString(Weber1.LocationURL);
        
        }

        private void toolButton4_Click(object sender, EventArgs e)// 这是 刷新 键
        {
            if (cmbURL.Text == "") return;
            if (cmbURL.Text == "about:blank") return;
            Weber1.Refresh2();
            cmbURL.Text = Convert.ToString(Weber1.LocationURL);
        }

        private void toolButton5_Click(object sender, EventArgs e)//这是 主页 键
        {
            Weber1.Navigate("about:blank");
            cmbURL.Text = "about:blank";
        }

//以上是工具栏上一系列按键的操作

       
private void cmbURL_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == (char)13)
            {
                btnGo.PerformClick();
            }
        }
====================================================================================================
问题:
----------------------------------------------------------------------
(1)...当第一次按下enter键或“转到”键时,虽然转到相应网页,但cmbText.text内只是一片空白
(2)...在(1)的基础上,重新输入新的网址(与(1)中不同的网址),虽转到相应网页,但cmbtext.text显示的却是(1)时的网址!
(3)...在(2)的基础上,按“前进”,虽转到相应网页,但cmbtext.text显示的却是(2)时的网址!
举个例子:
先在cmbtext中输入“www.baidu.com”,然后按下enter键或“转到”键,虽然转到百度主页,但cmbText.text内只是一片空白
再在cmbtext中输入“www.”,然后按下enter键或“转到”键,虽然转到“hao123”网站,但cmbText.text内显示的是“http://www.baidu.com”!!
然后按“后退”键,虽然转到百度主页,但cmbText.text内显示的却是"http://www.!!
--------------------------------------------------------------------------
(4)...当我按下了一个网页上的一个链接后,弹出的却又是一个系统默认浏览器,如何改成弹出自己做的浏览器(不是将系统默认浏览器改成自己的浏览器)?
(5)...如何像ie8.ie9那样一个网页一个选项卡,是不是打开网页是在选项卡控件中new一个选项卡出来?

===================================================================
希望各位高手解答,谢了!!
搜索更多相关主题的帖子: 浏览器 color 
2012-02-07 22:26
BigPei
Rank: 3Rank: 3
来 自:苏州
等 级:论坛游侠
威 望:6
帖 子:43
专家分:161
注 册:2012-1-10
收藏
得分:10 
Debug看看,1、2、3应该都能解决的吧。

http://blog.

http://blog.

Fighting forever.
2012-02-08 10:08
炫色流年
Rank: 2
等 级:论坛游民
帖 子:61
专家分:18
注 册:2011-8-8
收藏
得分:0 
感谢斑竹
2012-02-08 20:34
炫色流年
Rank: 2
等 级:论坛游民
帖 子:61
专家分:18
注 册:2011-8-8
收藏
得分:0 
问题4怎么解决??
2012-02-08 20:35
niuniu502
Rank: 2
等 级:论坛游民
帖 子:6
专家分:50
注 册:2012-2-1
收藏
得分:10 
4、5的话就说起来简单,做起来复杂。

4、需要拦截newwindow事件,是不是这个事件我也忘了,拦截后,新开启一个axwebbrowser实例。
5、5其实就是4的延伸,一般都是添加个标签页,嵌入一个axwebbrowser实例,但实际做起来超麻烦,axwebbrowser有内存泄漏的问题。你需要有自己的办法开管理这些实例。
否则你开几个实例,打开几十个网页后会发现你的进程内存吃掉几百M,上G的都有啊

2012-02-09 22:50
快速回复:关于浏览器axwebbrowser的各种问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014891 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved