疤宓南ⅰM_SYSMAND 是向 Windows 发送消息的常量。SC_MOVE 是控制移动窗体的常量。请注意:这里 SC_MOVE 的赋值是 &HF012,表示鼠标对象。
3、在窗体的 MouseDown 过程中加入以下代码:
Private Sub Form_MouseDown(Button As Integer; Shift As Integer; X As Single; Y As Single)
ReleaseCapture
SendMessage Me。hwnd; WM_SYSMAND; SC_MOVE; 0
End Sub
其中 ReleaseCapture 函数用来释放鼠标捕获,SendMessage 函数向 Windows 发送移动窗体的消息。
4、保存并运行程序,按下鼠标,你会发现窗体会随着鼠标的移动而移动。
以上讲述了如何在 VB 中用鼠标拖动窗体,其实,控件的拖动的原理是一样的。例如以下代码可以实现图片框的拖动:
ReleaseCapture
SendMessage Picture1。hwnd; WM_SYSMAND; SC_MOVE; 0
(注:以上程序在 Windows98、VB5。0/6。0 下调试通过。在 NT4。0、VB6。0 下不能运行。)
103;Q:用 Delphi5。0 编程实现 Windows 桌面的隐藏和显示
A:实现原理是调用 Windows 的 API 函数。程序代码如下:
procedure TForm1。Button1Click(Sender: TObject);
var hDesktop:Thandle;
begin
hDesktop:=FindWindow('Progman';nil);
ShowWindow(hDesktop;SW_HIDE); //隐藏桌面
end;
procedure TForm1。Button2Click(Sender: TObject);
var hDesktop:Thandle;
begin
hDesktop:=FindWindow('Progman';nil);
ShowWindow(hDesktop;SW_SHOW); //显示桌面
end;
procedure TForm1。Button3Click(Sender: TObject);
begin
close;
end
104;Q:应用 Microsoft TTS 语音引擎的 Delphi 语言实例
A:建立一个单窗体工程,添加一个 Edit 和 2 个 Button 控件,分别命名为 Edit1、btnSpeak、btnStop。然后安装引用 TTS 的 vtxtauto。tlb 类库文件,方法是点击菜单“工程…Import Type Library”,点“add”按钮,然后选中 Windowsspeech 下的 Vtxtauto。tlb 文件,放入安装包后,再将其添加成 Delphi 的一个 Unit,自动产生的名字为“VTxtAuto_TLB”。然后,在主 Unit 的 Uses 里引用 VTxtAuto_TLB,即在 Uses 后添加字串“VTxtAuto_TLB”。最后参考以下代码:
……
procedure TfrmSpeech。FormCreate(Sender: TObject);
begin
vtxt:=CoVTxtAuto_。Create;
vtxt。Register('';'Speech');
Edit1。Text:='I am a chinese; I love my homeland very much; and you?'
end;
procedure TfrmSpeech。btnSpeakClick(Sender: TObject);
begin
vtxt。Speed:=100;
vtxt。Speak(trim(Edit1。Text);10);
end;
procedure TfrmSpeech。btnStopClick(Sender: TObject);
begin
vtxt。StopSpeaking;
end;
end。
第六卷 第一章
?1;Q:怎样把别人网页上的背景音乐保存下来?
A:浏览该网页后;在你的 WindowsTemporary Inter Files 文件夹下可以找到该背景音乐的缓存文件,拷贝出来即可使用。如果还是找不见该文件,可以打开网页的源文件,找到音乐文件的 URL 路径,用“蚂蚁”等 FTP 软件进行下载。
2;Q:避免有人从你分帧的主页的帧中径直进入网站;而不是从 index。htm 中进入?
A:在帧中的网页的〈head〉〈/head〉之间加入以下脚本代码:
〈Script language=〃JavaScript〃〉
if (top==self)
self。location。href=〃index。htm〃;
〈/Script〉
这样;当有人从帧中进入网站时;就会自动重定向到主页文件 index。htm。
3。Q:怎样防止别人把你的网页放到框架里?
A:因为框架(frame)的缘故;有许多人把别人的网页放置到自己的框架里;使之成为自己的一页。如果你要防止别人这样做;可以加入下列 JavaScript 代码即可;它会自动监测;然后跳出别人的框架。
〈Script language=〃javascript〃〉
if (self != top)
top。location = self。location;
〈/Script〉
4;Q:怎样在 FrontPage2000 中加入 Flash 动画?
A:在 FrontPage2000 中;点击'插入'…》'高级'…》'插件',在弹出的窗口中,设置一下 Flash 文件的大小及其它信息,确定即可。
5;Q:怎样在网页中加入注释?
A:在共同网页开发中,加入注释是防止分工被搞混淆或者注释某段代码特殊的含义,加入注释的格式是:
〈!…[注释内容…]……〉
6;Q:怎样测试浏览器并自动装入所需要的网页?
A:目前微软和网景的浏览器并不能完全兼容所有网页,有的网页在某种浏览器中非常漂亮, 而用其它浏览器查看时却一团糟。如果你需要测试浏览器,可以加入以下 JavaScript 代码使浏览器自动装入所需要的网页:
〈script LANGUAGE=〃JavaScript〃〉
function TestBrowser()
{
ie = ((navigator。appName==〃Microsoft Inter Explorer〃) && (parseInt(navigator。appVersion) 》= 3 ))
ns = ((navigator。appName == 〃scape〃) && (parseInt(navigator。appVersion) 》= 3 ))
if (ns) { setTimeout(〃location。href=〃ns。htm〃〃;10); }
else {setTimeout(〃location。href=〃ie。htm〃〃;10); }
}
〈/script〉
7;Q:怎样让链接没有下划线?
A:只要在〈Head〉〈/Head〉中加入以下代码,所有链接就都没有下划线了:
〈style type=〃text/css〃〉
〈!……
a {text…transform:none;text…decoration:none;}
a:hover {text…decoration:underline}
……〉
〈/style〉。
8;Q:怎样在网页中加入 E…mail 链接并显示预定的主题?
A: 〈A href=〃mailto:Emailhost@263。?subject=主题〃〉……〈/a〉
9;Q:怎样让网页的背景图像不滚动?
A: Inter Explorer 浏览器支持一个 Body 属性 bgproperties,它可以让背景不滚动:
〈Body Background=〃图片文件〃 bgproperties=〃fixed〃〉
10;Q;怎样定义网页的关键字?
A:在网页中加入关键字;可以供某些搜索站台机器人使用;它们会利用该关键字为你的网站做索引, 这样,当别人用关键字搜索网站时,如果你的网页包含该关键字,那么就可以被列出了。定义本网页关键字,可以在〈Head〉〈/Head〉中加入如下代码:
〈meta name=〃Keywords〃 content=〃china;enterprise;business;〃〉
Content 中所包含的就是关键字;你可以自行设置。
这里有个技巧;你可以重复某一个单词;这样可以提高自己网站的排行位置;如:
〈meta name=〃Keywords〃 content=〃china;china;china;china〃〉
11;Q:怎样隐藏在状态栏里出现的链接信息?
A:大家知道;当你指向一个链接时;该链接的信息就会出现在浏览器的状态栏里; 如果需要隐藏它;可以本链接中做如下设置:
〈a href=〃http://zhanghing。yeah。〃 onMouseOver=〃window。status=〃none〃; return true〃〉链接〈/a〉
12;Q:怎样在网页中加入多媒体播放?
A:有些多媒体文件无需其他程序就可以播放, 而有许多多媒体文件需要外部程序才能播放。如果浏览器没有安装这种外部程序,那么浏览器会自动去下载。 要加入多媒体格式;可加入如下代码:
〈EMBED SRC=〃test。ram〃 AUTOSTART=〃TRUE〃 LOOP=〃3〃 WIDTH=〃80〃 HEIGHT=〃30〃〉
13;Q:怎样在网页中加入电子邮件表单提交?
A:表单提交需要 CGI 程序的支持;但也可以利用 E…mail 提交;当你设计好表单后, 把 Action 内容加入邮件地址即可,例如:
〈form method=〃POST〃 action=〃mailto:zhangking@263。〃 ENCTYPE=〃text/plain〃〉
……
〈/form〉
14;Q:用 Word 作为 Html 编辑器产生的代码比较冗长,怎么优化?
A:可以用网页制做软件 Dreameweaver3。0 进行优化。
15;Q:IE5。0 的部分快捷键:
A:打开查找功能:Ctrl+F
关闭浏览器窗口:Ctrl+W
打开地址栏下拉列表框:F4
刷 新:F5
将当前Web页保存到收藏夹列表:Ctrl+D
打开当前 IE 窗口的一个拷贝:Ctrl+N
停止下载当前网页:Esc
光标迅速移动到网页的开头:Home
光标迅速移动到网页的尾部:End
打开新的地址键入窗口:Ctrl+O
打开收藏夹:Ctrl+I
打开历史记录文件夹:Ctrl+H
打开浏览器设定的默认主页:Alt+HOME
16;Q:网页上的图形格式:
A:图形的格式千奇百怪,但是一般 浏览器支持的图形格式只有 。gif 和 。jpg(。jpe),这两种都是经过压缩的图形文档。所以文件较小,适合在网络上传送。如果你的图形是别的格式, 则必须使用图形处理软件来将其转存成 。GIF 或 。JPG 的图形格式。但到底该用那一种图形格式呢? 先看看下面的比较: GIF 格式 JPEG 格式
压缩比例 较小 从大到小有四种选择
最多支援的颜色 256色 全彩(16百万色)
渐显功能(“隔行”方式) GIF89a有 无
背景透明功能 GIF89a有 无
动画 GIF89a有 无
结论是:比较大或颜色较多的图形就用 。JPG 的格式; 比较小或颜色较少, 而且需要有特殊功能的图,就用 。GIF 格式。注意:。GIF 还分为 GIF87a 和比较新的 GIF89a 两种格式,一些特殊的功能(像透明背景) 则是 GIF89a 才有的。当你真的无从选择的时候,就干脆分别储存成两种图形格式,看看那个文件比较小,就用那一个。
将 Gif 文件保存成“隔行”方式:在 Photoshop 中,保存时选择“Interlaced”。
将 jpg 文件保存成“逐级”方式:在 Photoshop 中,保存时选择“Progressive”。这样,图形显示时将由模糊逐渐变得清晰起来。
17;Q:表格中嵌套〈Form〉标签时,换行的取消:
A:在网页制做中,当表格和〈Form〉〈/Form〉标签嵌套时,如果像如下的形式:
〈table border=1〉 〈tr〉 〈td〉 〈Form〉 〈input name= size=〉 〈input type=button
value=Test〉 〈/Form〉 〈/td〉 〈/tr〉 〈/table〉
那么在〈Form〉构造出的文本框下会有一个空行,非常影响版面的编排。 而只要把〈/Form〉放到表格标签〈/td〉、〈/tr〉或〈/table〉的外边(如下),则问题就解决了。
〈table border=1〉
〈tr〉 〈td〉 〈Form〉 〈input name= size=〉 〈input type=button value=Test〉 〈/td〉
〈/Form〉 〈/tr〉 〈/table〉
18;Q:什么是 ActiveX 控件?
A:Microsoft ActiveX 控件是由软件提供商开发的可重用的软件组件。使用 ActiveX 控件,可以很快地在网址、台式应用程序、以及开发工具中加入特殊的功能。例如,StockTicker 控件可以用来在网页上即时地加入活动信息,动画控件可用来向网页中加入动画特性。
现在,已有 1000 多个商用的 ActiveX 控件。开发控