电脑十万个为什么-第21章
按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
下面举一个具体的程序来说明定制图象文件的过程:
1、创建一个新的项目文件,在 Forml 中加入一个图象控件 Picture1,将Picture1 的 AutoRedraw 属性设置为 True;
2、在Form_Load() 事件中,加入如下代码:
Private Sub Form-Load()
Dim CX As Integer
Dim CY As Integer
Dim Limit As Integer
Dim Radius As Integer
CX=1000
CY=1000
For Radius=0 To Limit
Picturel。Circle(CX;CY);Radius;RGB(Rnd*255;Rnd*255;Rnd*255)
Next Radius
SavePicture Picturel。Image;〃c:custom。bmp〃
End Sub
执行此程序就会把图片框 Picture1 上的图象保存在 C: 盘根目录下 custom。bmp 图象文件中。
最后有两点需要指出:
1、在使用 SavePicture 语句之前,必须先将窗体或图片框的 AutoRedraw 属性设为 True,否则保留的将是一张空图;
2、使用 Image 属性保存的用画图命令(如 Line,Cirele,Pset 或 Print)画出来的图形总是以 BMP 文件格式保存。但在程序设计时如果使用窗体或图片框的 Picture 属性载入或在程序运行时通过 LoadPicture 函数载入的图象,使用 SavePicture 语句存储时,存储的文件格式同其载入前的文件格式一样(如 ICO 格式等)。
102;Q:在 Visual Basic 中如何拖动窗体或控件?
A:现在的许多 windows 下的应用程序,都采用了图形化的界面,但是在这样的界面下就不能使用 Windows 原来的标题条了,否则会影响界面的美观。那么在没有标题条的情况下如何用鼠标拖动窗体或者其它的控件呢?
其实,采用 API 函数调用很容易实现,下面我们以拖动窗体 Form1 为例来具体讲一下实现方法:
1、新建立一个项目,名称为 test。vbp;
2、填加一个模块,名称为 test。bas,并且在声明部分加入以下代码:
Declare Function ReleaseCapture Lib 〃user32〃 () As Long
Declare Function SendMessage Lib 〃user32〃 Alias 〃SendMessageA〃 (ByVal hwnd As Long; ByVal wMsg As Long; ByValwParam As Long; lParam As Any) As Long
Public Const WM_SYSMAND &H112
Public Const SC_MOVE &HF012
其中 ReleaseCapture 函数是用来释放鼠标捕获的,SendMessage 函数是一个在 Windows API 中非常重要的函数,在这里的作用是用来向 Windows 发送移动窗体的消息。WM_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 Internet Files 文件夹下可以找到该背景音乐的缓存文件,拷贝出来即可使用。如果还是找不见该文件,可以打开网页的源文件,找到音乐文件的 URL 路径,用“蚂蚁”等 FTP 软件进行下载。
2;Q:避免有人从你分帧的主页的帧中径直进入网站;而不是从 index。htm 中进入?
A:在帧中的网页的〈head〉〈/head〉之间加入以下脚本代码:
〈Script language〃JavaScript〃〉
if (topself)
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 Internet Explorer〃) && (parseInt(navigator。appVersion) 》 3 ))
ns ((navigator。appName 〃Netscape〃) && (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 {texttransform:none;textdecoration:none;}
a:hover {textdecoration:underline}
〉
〈/style〉。
8;Q:怎样在网页中加入 Email 链接并显示预定的主题?
A: 〈A href〃mailto:Emailhost@263。net?subject主题〃〉……〈/a〉
9;Q:怎样让网页的背景图像不滚动?
A: Internet Explorer 浏览器支持一个 Body 属性 bgproperties,它可以让背景不滚动:
〈Body Background〃图片文件〃 bgproperties〃fixed〃〉
10;Q;怎样定义网页的关键字?
A:在网页中加入关键字;可以供某些搜索站台机器人使用;它们会利用该关键字为你的网站做索引, 这样,当别人用关键字搜索网站时,如果你的网页包含该关键字,那么就可以被列出了。定义本网页关键字,可以在〈Head〉〈/Head〉中加入如下代码:
〈meta name〃Keywords〃 content〃china;enterprise;business;net〃〉
Content 中所包含的就是关键字;你可以自行设置。
这里有个技巧;你可以重复某一个单词;这样可以提高自己网站的排行位置;如:
〈meta name〃Keywords〃 content〃china;china;china;china〃〉
11;Q:怎样隐藏在状态栏里出现的链接信息?
A:大家知道;当你指向一个链接时;该链接的信息就会出现在浏览器的状态栏里; 如果需要隐藏它;可以本链接中做如下设置:
〈a href〃zhanghing。yeah。net〃 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 程序的支持;但也可以利用 Email 提交;当你设计好表单后, 把 Action 内容加入邮件地址即可,例如:
〈form method〃POST〃 action〃mailto:zhangking@263。net〃 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 两种格式,一些特殊的功能(