基于VB的超文本系统中热链功能的设计与实现

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:angelboy8100
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:该文介绍了利用VB设计简单适用的超文本功能时热链功能的设计与实现方法。
  关键词:超文本;Visual Basic;热链
  中图分类号:TP311文献标识码:A 文章编号:1009-3044(2008)36-2655-03
  Designing and Achieving Hotlink of hypertext System in VB
  FAN Xian-mei
  (Technique Center of Modern Education, Anhui University of Architecture, Hefei 230022, China)
  Abstract:The article describes a new methods to designed and achieve hotlink in a simple and practicable hypertext system in VB
  Key words: Hypertext; Visual Basic; Hotlink
  1 引言
  使用过WINDOWS的人都会用到Micsorft复杂的帮助系统,该系统可以让用户很快地找到特定的主题,并且通过单击热链在主题与主题之间跳转。WINDOWS帮助系统是典型的超文本应用程序。
  超文本是近年来兴起的一种表示和管理多媒体信息的强有力工具。与传统文本相比超文本的最大特点是:它可以把信息根据需要以非线性的方式链接起来。结点(Node)和链(Link)是超文本的两个核心概念。结点是信息的单位,可以包括文本、图像、声音、视频、动画等各种媒体信息。链用来组织信息,表达信息间的关系(包括媒体间的时空关系),实现结点间的连接与转移(单向与双向)。因此,超文本试图通过非线性的手段,将相关信息有机地组织在一起,模拟人脑的自由联想。它不仅注意信息本身,更注意信息之间的联想关系。建立和浏览信息系统时,用户可以任意选择起始点和其后的顺序。
  热链是超文本的灵魂,它定义了超文本的结构,其作用主要是用来建立结点之间的基本顺序。
  2 热链的基本要素
  在显示的超文本中,热链总是突出显示,它是一个活动的区域,当鼠标在热链上移动时,会改变指针的形状,当用户在活动区域内单击鼠标时,会被引导到相关主题。热链可以是文本或图片。热链的内容可以用异种格式(带下划线、粗体/斜体、改变颜色、图标、按钮等)给予标记。
  热链的特点包括两个方面:一是鼠标处于其上时具有不同的形状;二是单击鼠标左键的响应。操作过程上可以分为两个事件:鼠标移动和鼠标单击。由鼠标移动的响应函数完成对鼠标是否在热链上的判断,若在热链上则改变鼠标的形状。在单击鼠标事件的响应函数中,根据鼠标的开关来确定应弹出的相应信息。
  3 超文本中热链的设计与实现
  目前有多种方法开发超文本系统。由于VB不支持超文本,因此,笔者在用VB开发多媒体CAI教学软件时用VB开发了一个小型的超文本系统。本文仅介绍其中热链功能的实现方法。
  3.1 鼠标指针图形的设计
  在通常情况下我们在屏幕上所看到的鼠标指针形状为双线箭头,当鼠标移动到热链上时,其指针形状将改变以提示用户此处是热区,这里指针形状的改变是由Mous.Move函数来实现。而鼠标的指针形状的设计和选择有两种方法:第一种方法是利用现有资源。这种方法比较简单,在WINDOWS系统和VB软件的Cursors子目录中有许多扩展名为.CUR的图标文件,这些文件提供了各种不同形状的图形,我们在开发软件时可以根据不同的需要适当加以选择后直接应用(只要将所选择的图形文件拷贝到相应的路径及文件夹中即可)。当然还可以利用各种能够找到的扩展名为.ICO的图标文件。第二种方法是自己设计鼠标图形。目前有许多易学实用的图标编辑工具软件,比较常见的有以下几种:Axialis IconWorkshop(全功能图标编辑软件)、YansIconMaker(Ico格式图标及ani格式动态光标制作)、Falco Image Studio (图标制作和编辑工具)、IconCool Studio(ico图标编辑和图标制作工具)、IcoFX(图标编辑工具)、Easy Paint Tool SAI(专业级的图标制作工具)、IconLover(icon图标处理软件)、ArtIcons Pro(创建和编辑以及管理系统环境下图标ico)等。利用这些工具软件可以对已有图标进行修改编辑,也可以自行设计具有独特风格的个性化鼠标图形,图形编辑结束后,将所编辑的图形以合适的文件名存放到适当的目录中,系统将会把该文件以.ICO或.CUR后缀文件格式存放。
  根据图形来源不同,在VB应用程序中,编写相应的语句如下:
  Cursor1=LoadPicture(“D:\ICONS\MOUSE02.ICO”) \\自定义图形
  Cursor2=LoadPicture(“D:\ICONS\MOUSE03.CUR”)\\自定义图形
  Cursor3=LoadPicture(“C:\Windows\Couser\Buzy_1.CUR”) \\系统提供的图形
  以上的文件路徑应根据文件存放位置自行设置。
  3.2 MousePointer和MouseIcon属性的设置
  在VB系统中为控件设置了MousePointer属性和MouseIcon属性,MousePointer属性用来设置或返回当鼠标经过对象某一部分时鼠标指针的类型,该属性设有15个值,当其返回值为0—14时,鼠标的图形为系统设置的不同的默认形状;当其值为99时,则显示自定义鼠标图形。因此,在应用程序中若要使用自定义的鼠标图形,必须蒋该属性的值设为99,否则蒋不能显示自定义的鼠标图形。MouseIcon属性提供一个自定义图标,使程序能够很容易地访问自定义光标,它可以是任意大小并具有任何热点的光标,它在MousePionter属性设为99时使用。为窗体上的Picture1控件设置自定义鼠标指针类型的相应语句示例如下:
  Frmjtzd.Picture1.MousePionter=99
  Frmjtzd.Picture1.MouseIcon= LoadPicture(“D:\ICONS\MOUSE02.ICO”) \\自定义图形
  虽然VB不创建或不支持彩色光标(.CUR格式)文件,但可以使用MouseIcon属性来装入光标或者图标文件。这样装入的彩色光标文件(例如Windows附带的)将以黑白形式显示。要显示一个彩色光标,应使用彩色图标文件(.ICO格式)。
  目前在高版本的Windows系统中支持32位高色彩的鼠标指针,然而在VB程序中,却不支持这么高位的色彩,也不支持动画图标,因此,若要载入32位色彩或者动画的鼠标指针,可以通过调用Windows的API函数实现这一目的。这里用到两个API函数,LoadCursorFromFile用于装入新光标(xin),需要指明新光标的具体路径及文件名;SetClassLong用于设置使用新光标(NewCur)。这一函数使用时会返回一个代表前一个光标的变量值(OldCur),为我们关闭程序时得以方便的恢复原始光标(OldCur)。函数的VB定义如下:
  Private Declare Function LoadCursorFromFile Lib "user32" Alias "LoadCursorFromFileA"(ByVal lpFileName As String) As Long
  Private Declare Function SetClassLong Lib "user32" Alias "SetClassLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
  Dim NewCur As Long
  Dim OldCur As Long
  為窗体对象设置新光标的语句示例:
  Private Sub Form_Load()
  NewCur = LoadCursorFromFile("C:\WINDOWS\CURSORS\ handns.ani")
  OldCur = SetClassLong(hwnd, -12, NewCur)
  End Sub
  恢复原始光标的语句示例:
  Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
  SetClassLong hwnd, -12, OldCur
  End Sub
  3.3 建立跟踪热链的数据结构
  超文本文档中将会包含许多超级链接,程序只有记录了热链在屏幕中的位置后,我们才能跟踪它们,为此,必须定义一个记录热链位置的数据结构:
  Private Type Link_Type
   Left X As Integer
  Top X As Integer
  Right X As Integer
  Bottom X As Integer
  LinkIndex As Integer
  End Type
  这个数据主要用于记录热链在屏幕中的位置,这是由程序来实现的,当文字在屏幕上显示的同时,读取文字的子程序会自动的识别其中的热链,并记录其各热链在屏幕上的位置(上、下、左、右)及序号,以备下一步使用。
  3.4 建立鼠标移动事件与其响应函数的映射
  当经过处理后的超文本文件显示在屏幕上时,其热链部分将以异种格式显示,此时热链在屏幕中的位置已经被相应的子程序记录下来,当光标在其上移动时,光标的形状将改变以提示用户此处是热链,这一功能的实现是由鼠标移动事件及其响应函数来完成的。该项函数主要用来判断鼠标是否在热点上,若在则改变鼠标指针形状。相应的语句如下:
  Private Sub Picture1_mouseMove(Button As Integer, Shift As integer, X As single, Y As single )
  Dim found As integer
  Dim Index As integer
  Found=false
  For index=1 to CurrentLink
  If(X>Links(index).left X) and ((Xlink(indx) .Top Y)
   and ((Y  Found=ture
  End if
  Next Index
  If Found Then
  Frmjtzd .Picture1 .MouseIcon=Couser1 \\用户自定义鼠标指针图形
  Frmjtzd .Picture1 .MousePointer=99
  Else
  Frmjtzd .Picture1 .MousePointer=0
  End if
  End sub
  3.5 建立单击鼠标事件与其响应函数的映射
  鼠标移动到热链上后将改变形状,这时单击鼠标则可以弹出相关信息,这一功能的实现主要是由MouseDown函数来完成的。假如Picture1中(100,100,200,200)的矩形区域为热链所在位置,Word的内容为与热链相关的信息内容,则相应的部分函数语句如下:
  Private Sub Picture1_mouseDown (Button As Integer, Shift As integer, X As single, Y As single )
  Dim found As integer
  Dim Index As integer
  Found=false
  For index=1 to CurrentLink
  If(X<200 and X>100 and Y>100 and Y<200) then
  Picture2.piont Word
  End if
  ┋
  Next Index
  End sub
  
  4 结束语
  热链是超文本的核心,是实现超文本功能的关键技术,本文介绍的方法已应用于我们开发的多媒体CAI教学软件中,用此方法可以轻松实现多个热链响应,效果很好。
  
  参考文献:
  [1] Regelski M.Visual Basic 开发多媒体应用程序[M].谢东译.北京:清华大学出版社,1997.
  [2] Petroutsos E.Visual Basic 从入门到精通[M].邱促潘,译.北京:电子工业出版社,1997.
其他文献
摘要:函数重载机制是C 语言中的关健技术之一,它允许功能相近的函数在相同的作用域内以相同函数名定义,编程中合理的使用函数重载,可以增强程序设计的灵活性、扩充性和可读性。  关键词:函数重载;编译器;覆盖  中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)28-0135-02  Application of Function Overloading in C   LI
摘要:Sniffer技术被广泛应用于网络管理。我们可以通过它进行数据包分析,从而了解网络的当前状况,以便找出所关心的潜在问题。  关键词:Sniffer;网管管理;QQ  中图分类号:TP393文献标识码:A文章编号:1009-3044(2008)12-2pppp-0c    The Application of Sniffer to Network Management  WANG Xiao-l
一、2019年度论文转载概况  1.论文来源期刊转载数量  2019年《复印报刊资料,小学语文教与学》(以下简称《小学语文教与学》)共转载论文198篇,分布在47种刊物上。排名前9位的期刊及转载数量依次是:《小学语文》18篇、《语文教学通讯》《小学语文教师》各14篇、《教学月刊(小学版)》l3篇、《小学教学》《教育研究与评论》各12篇、《小学语文教学》ll篇、《江苏教育》《江苏教育研究》各10篇、
摘要:针对高等医学院校学生成绩特点,设计了数据仓库模型,并给出了具体的实现方法,该模型的建立可以为教学管理提供决策支持。  关键词:数据仓库;模型设计;学生成绩  中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)21-30408-02    Designing and Modeling of Data Warehouse Based on College Student
摘要:介绍了图书馆2.0的概念, 阐述了图书馆2.0带来的变化,探讨了图书馆2.0发展的障碍。   关键词:图书馆2.0;Web2.0   中图分类号:TP311文献标识码:A 文章编号:1009-3044(2008)16-21303-02  Discussion about the Constructions of Library2.0   CHEN Guo-lan  (Library of N
摘要:本文介绍了我校“教学管理信息系统”的运行现状。强调建立健全管理规章制度、明确各职能部门的工作职责、协调各部门的工作关系、及时更新系统内的数据信息、经常培训操作人员是保证系统健康运行的基本前提。为确保系统正常运行,对系统管理员、管理部门工作人员和师生提出了基本要求。  关键词:高等院校;教学管理;学分制  中图分类号:G642文献标识码:A文章编号:1009-3044(2008)22-744-
摘要:本文介绍了在MICROSOFT公司的.NET和SQL Server数据库环境下,根据设备实际的点检定修主线,实现了设备以及设备点检和维修流程的计算机网络化管理,详细介绍了系统的总体设计思路及其实现过程。系统具体功能包括了:设备信息管理、设备点检、设备故障、设备维修管理。  关键词:.NET;C/S;设备管理;数据库  中图分类号:TP309文献标识码:A文章编号:1009-3044(2008
摘要:C语言程序设计是信息与计算科学专业一门重要且难度很大的专业必修课。为解决C语言教学中的重点和难点,作者结合多年的教学经验,从三个方面对教学方法的改进进行了讨论,以期提高教学效果。  关键词:C语言;程序设计;教学方法  中图分类号:G642文献标识码:A文章编号:1009-3044(2008)07-11676-01    The Reform and Practice of the C Pr
教育界有一个很出名的比喻:要给学生一滴水,教师要有一桶水。“语文主题学习”研究项目提倡大量阅读,“反三归一,质从量出”,“一课一得”。因此教师必须要在课堂有限的时间里“授之以渔”而不是“授之以鱼”,这样的“得”才是最有价值的,也才是学生最需要的那滴“水”。下面,笔者就结合自己的教学实践,谈谈如何通过解读文本,找到给学生的那滴“水”。  一、文体不同,重点不同  同一种语言表达形式,在说明文、散文、
摘要:计算机辅助教学与传统的课堂教学相比,的确具有其自身的优越性,它改变了以往传统电教手段相对呆板的教学方式,在文字、图形的基础上增加了图象,动画、声音、影像等,加强了表现效果;另一方面,当前的计算机辅助教学存在着严重的问题。要解决这些问题,必须做好教学设计工作我们如果想以某一种学习理论来指导我们的教学,解决教学中的一切问题,那也是行不通的。科学的做法是,以多种学习理论为指导,吸收其长处,克服其不