找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
.COM/.NET/.ORG 国际域名注册全功能虚拟主机/免备案虚拟主机
查看: 1434|回复: 1

[转帖]C++B网络编程经验几则

[复制链接]

9

主题

9

回帖

3134

积分

论坛元老

积分
3134
发表于 2003-10-30 11:36:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
一 、用C++Builder设计自己的浏览器

   C++Builder5提供了一个浏览器控件CppWebBrowser,它位于internet控件栏,主要方法有:
    Navigate函数,用于浏览给定的url的资源;
    GoBack(),浏览上一页;
    GoForward(),浏览下一页;
    Stop(),停止浏览;
    Refresh(),刷新当前页面。

  新建一个应用程序,将工程名保存为myie,设置Form1 的Name为Main_Form,在Main_Form上加入一个CppWebBrowser控件和一个ToolBar控件,把此ToolBar控件放入一个ComBox框,并加上五个ToolButton,设置其Name属性分别为“CppWebBrowser1”,“ToolBar1”,“ CB_URL”,“ TB_Prior,TB_Forward, TB_Stop,TB_Fresh,TB_Navigate”。

  TB_Navigate的OnClick事件代码如下:

void __fastcall TMain_Form::NavigateExecute
(TObject *Sender)
    {
   CppWebBrowser1->Navigate((WideString)
   CB_URL->Text, TNoParam(), TNoParam(), TNoParam(),
   TNoParam());
    }
    ComBox1的OnKeyPress事件代码如下:
void __fastcall TMain_Form::CB_URLKeyPress
(TObject *Sender, char &Key)
    {
          if(Key==13)       //若按下的键为回车键
          NavigateExecute(Sender);
    } 

  其余的代码类似。

   编译运行,一个具有基本浏览功能的浏览器就生成了。

二、获得html文件的源文件
  我们在用IE浏览主页时,若点击右键,选择“查看源文件”,系统会自动启动记事本显示此html的源文件。在编程时,有时需分析html文件的源文件,用C++ Builder 的 NMHTTP控件可以轻松解决这个问题。
  新建一个工程,从FastNet控件栏拖一个NMHTTP控件到窗体上,再拖一个Memo控件到窗体,假设要获得本人主页(http://lmq.4y.com.cn)的源文件,在Form1的OnCreate事件键入代码:

    void __fastcall TForm1::FormCreate(TObject *Sender)
    {
          Memo1->Clear();   //清空Memo1
          NMHTTP1->Get(“http://lmq.4y.com.cn");      
          Memo1->Text = NMHTTP1->Body;
    }

  编译运行程序,Memo1框中立即显示本人主页的源文件。

  另外,NMHTTP控件还支持代理Proxy,其属性Proxy和 Port分别指代理服务器的IP地址和端口号。

三、自动调用浏览器或邮件程序
   Windows 提供了ShellExecute函数,用来调用外部程序或与某程序关联的文件。
  其原型如下:

   HINSTANCE ShellExecute(
   HWND hwnd,        // handle to parent window
   LPCTSTR lpOperation,       
    // pointer to string that specifies operation to perform
   LPCTSTR lpFile,       
   // pointer to filename or folder name string
   LPCTSTR lpParameters,       
// pointer to string that specifies executable
-file parameters
   LPCTSTR lpDirectory,
        // pointer to string that specifies default directory
   INT nShowCmd
        // whether file is shown when opened
   );

  若要自动浏览器程序访问个人主页,程序代码如下:

ShellExecute(Handle,NULL,
“http://lmq.4y.com.cn",NULL,NULL,SW_SHOWNORMAL);

  若要启动系统默认邮件程序,程序代码如下:

ShellExecute(Handle,NULL,
“mailto:lmq@4y.com.cn",NULL,NULL,
SW_SHOWNORMAL);

  以上程序在Pwin98+BCB5下运行通过。   
[em11][em2][emb7][emb5]
回复

使用道具 举报

15

主题

61

回帖

3193

积分

论坛元老

积分
3193
发表于 2003-10-30 13:36:32 | 显示全部楼层
可惜我是学Java的,不过可以参考一下
爱情是这个世界上最坚贞,也最不可靠的东西。时间过了,爱情淡了,相爱的人也就散了。原本的美好就会变成种束缚,变成个你我都困在其中的牢笼,我无法呼吸的,你舍得看到我不自由吗?其他没什么,就是放心不下你的身体,他欺负你,记得告诉我!!!要照顾好自己,不希望看到曾经爱过的人不好。知道吗?最后,能让我再吻你一下吗? 吾爱 再见!旧缘如梦,只是一个白色与灰色的世界,白色是我的内心,它一尘不染,灰色是我的心情,它忧郁不堪.身上拭不去的永远是寂寞的尘埃.心里拭不去的,永远是对你的那份牵挂!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|西京校友网 ( 陕ICP备11003551号-5 )

GMT+8, 2025-5-9 00:16 , Processed in 0.020512 second(s), 7 queries , MemCache On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表