📄 计算机世界 c++b网络编程经验几则 .htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0044)http://www2.ccw.com.cn/2000/0027/0027b15.asp -->
<HTML><HEAD><TITLE>计算机世界: C++B网络编程经验几则 </TITLE><LINK href="/style.css"
type=text/css rel=stylesheet>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD>
<BODY bgColor=#ffffff>
<CENTER>
<TABLE cellSpacing=0 cellPadding=0 width=463>
<TBODY>
<TR>
<TD vAlign=top><BR>
<P align=right><FONT color=#ff0000><B>2000年7月17日</B></FONT> <BR>
<CENTER><IMG src="计算机世界 C++B网络编程经验几则 .files/c&l8.gif"></CENTER>
<P></P>
<CENTER><FONT color=#0000c0>
<H2>C++B网络编程经验几则 </H2></FONT>
<H3>骆名群 (lmq@4y.com.cn) </H3>
<HR>
</CENTER>
<H3>一 、用C++Builder设计自己的浏览器 </H3><FONT color=#ffffff>----</FONT>
C++Builder5提供了一个浏览器控件CppWebBrowser,它位于internet控件栏,主要方法有: <PRE> Navigate函数,用于浏览给定的url的资源;
GoBack(),浏览上一页;
GoForward(),浏览下一页;
Stop(),停止浏览;
Refresh(),刷新当前页面。
</PRE>
<P><FONT color=#ffffff>----</FONT>新建一个应用程序,将工程名保存为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”。
<P><FONT color=#ffffff>----</FONT>TB_Navigate的OnClick事件代码如下: <PRE>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);
}
</PRE>
<P><FONT color=#ffffff>----</FONT>其余的代码类似。
<P><FONT color=#ffffff>----</FONT> 编译运行,一个具有基本浏览功能的浏览器就生成了。
<H3>二、获得html文件的源文件 </H3><FONT
color=#ffffff>----</FONT>我们在用IE浏览主页时,若点击右键,选择“查看源文件”,系统会自动启动记事本显示此html的源文件。在编程时,有时需分析html文件的源文件,用C++
Builder 的 NMHTTP控件可以轻松解决这个问题。
<P><FONT
color=#ffffff>----</FONT>新建一个工程,从FastNet控件栏拖一个NMHTTP控件到窗体上,再拖一个Memo控件到窗体,假设要获得本人主页(http://lmq.4y.com.cn)的源文件,在Form1的OnCreate事件键入代码:
<PRE> void __fastcall TForm1::FormCreate(TObject *Sender)
{
Memo1->Clear(); //清空Memo1
NMHTTP1->Get(“http://lmq.4y.com.cn");
Memo1->Text = NMHTTP1->Body;
}
</PRE>
<P><FONT color=#ffffff>----</FONT>编译运行程序,Memo1框中立即显示本人主页的源文件。
<P><FONT color=#ffffff>----</FONT>另外,NMHTTP控件还支持代理Proxy,其属性Proxy和
Port分别指代理服务器的IP地址和端口号。
<H3>三、自动调用浏览器或邮件程序 </H3><FONT color=#ffffff>----</FONT> Windows
提供了ShellExecute函数,用来调用外部程序或与某程序关联的文件。
<P><FONT color=#ffffff>----</FONT>其原型如下: <PRE> 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
);
</PRE>
<P><FONT color=#ffffff>----</FONT>若要自动浏览器程序访问个人主页,程序代码如下: <PRE>ShellExecute(Handle,NULL,
“http://lmq.4y.com.cn",NULL,NULL,SW_SHOWNORMAL);
</PRE>
<P><FONT color=#ffffff>----</FONT>若要启动系统默认邮件程序,程序代码如下: <PRE>ShellExecute(Handle,NULL,
“mailto:lmq@4y.com.cn",NULL,NULL,
SW_SHOWNORMAL);
</PRE>
<P><FONT color=#ffffff>----</FONT>以上程序在Pwin98+BCB5下运行通过。
</P></TD></TR></TBODY></TABLE>
<SCRIPT language=JavaScript>
function adbn(sname,pname)
{
var Jtoday= new Date();jt=Jtoday.getTime();
var tilex='';
var catex='';
var sizex='1x1';
var w=1;h=1;
var adname='.cn';
document.write('<table border=0><tr><td>');
document.write('<A HREF="http://ad'+adname+'.doubleclick.net/jump/'+sname+pname+';sz='+sizex+';'+catex+tilex+'ord='+jt+'?" target=_blank><IMG SRC="http://ad'+adname+'.doubleclick.net/ad/'+sname+pname+';sz='+sizex+';'+catex+tilex+'ord='+jt+'?" border=0 height="'+h+'" width="'+w+'"></A>');
document.write('</td></tr></table>');
}
</SCRIPT>
<SCRIPT language=JavaScript>
adbn('www.ccw.com.cn/','week');
</SCRIPT>
<BR>
<TABLE align=center>
<TBODY>
<TR>
<TD colSpan=7>
<HR width=660 color=#f46240 SIZE=1>
</TD></TR>
<TR>
<TD align=middle colSpan=7><BR>周报全文频道联系方式:010-68096699-551</TD></TR>
<SCRIPT language=Javascript>
function AddBookMark(theTip)
{
theSite=window.location;
window.external.AddFavorite(theSite,theTip)
}
</SCRIPT>
<TR>
<TD align=middle><A href="http://www2.ccw.com.cn/pub/about.asp"
target=_blank>【关于我们】</A></TD>
<TD align=middle><A href="http://www2.ccw.com.cn/pub/serv.asp"
target=_blank>【广告服务】</A></TD>
<TD align=middle><A href="http://www2.ccw.com.cn/pub/contribute.asp"
target=_blank>【投稿指南】</A></TD>
<TD align=middle><A href="http://www2.ccw.com.cn/pub/contact.asp"
target=_blank>【联系方式】</A></TD>
<TD align=middle><A href="http://www2.ccw.com.cn/pub/clause.asp"
target=_blank>【法律声明】</A></TD></TR>
<TR>
<TD align=middle colSpan=5>Copyright(C) ccw.com.cn,All rights reserved
</TD></TR>
<TR>
<TD align=middle
colSpan=7><B>中国计算机世界出版服务公司版权所有</B></TD></TR></TBODY></TABLE></CENTER></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -