第一篇:如何在VFP中调用默认关联的程序打开文件
如何在VFP中调用默认关联的程序打开文件?(2007-01-20 17:13:12)转载
分类:『数据库-DB』
如何在VFP中调用默认关联的程序打开文件? 怎样在一个菜单中建立一个程序或命令打开一个网页或word,excel等文件???
打开一个网页与word,excel是不一样.1.word,excel要用ACTIVEX的OLECONTROL控件.2.打开一个网页要用到HYPERLINK控件.可以在表单上加一个TEXT一个COMMANG控件,还有一个超级链接HYPERLINK控件.COMMAND.CLICK事件:
THISFORM.HYPERLINK.NAVIGATETO(THISFORM.TEXT.VALUE)在vfp的例子中找到了一个这个问题的解决方法,使用api函数来解决,如下:
1、声明函数
DECLARE INTEGER ShellExecute;IN SHELL32.DLL;
INTEGER nWinHandle,;STRING cOperation,;STRING cFileName,;STRING cParameters,;STRING cDirectory,;INTEGER nShowWindow
2、在程序中任何地方调用,包括菜单中,打开一个e:a.htm文件的调用方法如下,=ShellExecute(0,“Open”,“e:a.htm”,“",”e:“,1)
在VFP中我们可以用run来调用由VFP自身生成的.exe文件。命令格式:
run c:..*.exe 当调用非VFP自身生成的.exe文件时,需要加上绝对路径和参数。
一般来说,用VFP运行非VFP自身生成的可执行文件时,会有一个黑色的窗口显示一下。可以通过加上/n来隐藏这个窗口。例如运行Windows下的扫雷游戏,命令格式如下:
RUN/n C:WindowsWinmine.exe
下面运行一个更复杂一点的程序。用word打开c:下的一个名为mlx.doc的word文件,命令格式如下:
run /n3 C:Program FilesMicrosoft OfficeOfficeWinword.exe C:mlx.doc 参数:n 在运行时隐藏VFP的黑色窗口。表示以最大化的方式运行程序。0隐藏窗口、1正常方式、2最小化方式、3最大化方式
在这种情况下,虽然可以通过加上参数使程序程序能够流畅运行,但还是要指定绝对路径,而在实际开发时我们常常无法确定所需要启动的应用程序的文件名及其绝对路径。比如,在上例中,我们无法确定用户的word到底安装在什么地方,如果用户把word安装到了别的地方,上述命令便会出错。再如,一个.gif文件,有的用户喜欢用ACD See来打开,有的用户喜欢用IE来打开,有的用户喜欢用豪杰来打开,……
为了解这种情况我们可以调用Windows的文件关连来打开文件。即所有的文件都用系统默认的程序来打开。这就要调用Windows的Win32 API函数。调用方式如下 DECLARE INTEGER ShellExecute IN shell32.DLL INTEGER HWND,;STRING lpszOP,;STRING lpszFile,;STRING lpszParams,;STRING lpszDir,;INTEGER fsshowcmd
DECLARE INTEGER GetDesktopWindow IN win32api HWND = GetDesktopWindow()lpszOP = ”open“
* 指定要打开的文件名
lpszFile =”c:mlx.doc“ lpszParams = ”“ lpszDir = ”c:temp“ fsshowcmd = 1
* 执行ShellExecute命令
LNRETURN = ShellExecute(HWND, lpszOP,lpszFile, lpszParams, lpszDir,fsshowcmd)
可以用任意的文件名来替换上文中的 c:mlx.doc。如果指定的文件名Windows无法找到相应的关连程序,这时程序将不会做出反应。有关的参数可以自行偿试进行修改,以达到最佳效果。
--API函数ShellExecute的使用
ShellExecute
说明 Shellexecute 函数用于对文件执行一个动词(verb).它通常用于启动一个与特定文件类相关联的应用程序.例如, 要启动 Word 来读一个.doc 文件, 或启动 记事本 来编辑一个.txt 文件.用于第二个参数中的最常用的动词是 ”Open“, 但其它可用的动词是 ”edit“,”print“,”explore“ 和 ”properties“.有趣的是, 使用 ”mailto:“ 或 ”http://“ 前缀, ShellExecute 函数也可用于以一个给定的邮件地址启动默认的邮件阅读器或给定的 URL 启动默认的浏览器.缩主文件 Shell32.dll
在 VFP 中的定义
DECLARE INTEGER ShellExecute IN ”Shell32.dll“;INTEGER hwnd,;STRING lpVerb,;STRING lpFile,;
STRING lpParameters,;STRING lpDirectory,;LONG nShowCmd Visual FoxPro 应用示例
* 打开 Word 来编辑文件 ”c:mywordfile.doc“ =Shellexecute(0,”Open“,”c:mywordfile.doc“,”“,”“,0)
* 打开默认的浏览器并定位到天堂论坛
=Shellexecute(0,”Open“,”http://www.xiexiebang.com/Article/ShowArticle.asp?ArticleID=34
5我想用VFP打開d:abc.pdf 怎樣寫程序呢?
-方法一:
先安装Adobe Reader 5.0或6.0
*将下面程序代码保存为一个prg文件,传入PDF文件名作为参数即可。
LPARAMETERS tFile
PUBLIC oform1
oform1=NEWOBJECT(“form1”)
IF VARTYPE(cFile)# “U” oForm1.cmdFile.Visible =.f.oForm1.cmdExit.Visible =.f.oForm1.oleControl1.Top = 12 oForm1.oleControl1.LoadFile([&cFile])ENDIF
oform1.Show *RETURN
********************************************************** DEFINE CLASS form1 AS form
DoCreate =.T.Caption = “pdfForm” Name = “Form1”
ADD OBJECT cmdfile AS commandbutton WITH;Top = 12,;Left = 12,;Height = 27,;Width = 144,;
Caption = “Select File”,;Name = “cmdFile”
ADD OBJECT cmdexit AS commandbutton WITH;Top = 12,;Left = 168,;Height = 27,;Width = 84,;Caption = “E ADD OBJECT olecontrol1 AS olecontrol WITH; OLEClass = “PDF.PdfCtrl.6”,;&&如果是Adobe Reader 5.0,此处的6为5 Top = 48,;Left = 12,;Height = 192,;Width = 348,;Name = “Olecontrol1” PROCEDURE Init ThisForm.ReSize()ENDPROC PROCEDURE Resize ThisForm.Olecontrol1.Height = ThisForm.Height24 ThisForm.Olecontrol1.Refresh()ENDPROC PROCEDURE cmdfile.Click LOCAL cFile cFile = GETFILE([PDF])IF!EMPTY(cFile) THISFORM.oleControl1.LoadFile([&cFile])ENDIF ENDPROC PROCEDURE cmdexit.Click ThisForm.Release()ENDPROC ENDDEFINE -方法二:(不能显示在表单中) 1、首先要安装PDF阅读工具。 2、然后利用API来调用默认关联的程序打开PDF文件,请详见: 在VFP中我们可以用run来调用由VFP自身生成的.exe文件。命令格式: run c:..*.exe 当调用非VFP自身生成的.exe文件时,需要加上绝对路径和参数。 一般来说,用VFP运行非VFP自身生成的可执行文件时,会有一个黑色的窗口显示一下。可以通过加上/n来隐藏这个窗口。例如运行Windows下的扫雷游戏,命令格式如下: RUN/n C:WindowsWinmine.exe 下面运行一个更复杂一点的程序。用word打开c:下的一个名为mlx.doc的word文件,命令格式如下: run /n3 C:Program FilesMicrosoft OfficeOfficeWinword.exe C:mlx.doc 参数:n 在运行时隐藏VFP的黑色窗口。3 表示以最大化的方式运行程序。1正常方式、2最小化方式、3最大化方式 在这种情况下,虽然可以通过加上参数使程序程序能够流畅运行,但还是要指定绝对路径,而在实际开发时我们常常无法确定所需要启动的应用程序的文件名及其绝对路径。比如,在上例中,我们无法确定用户的word到底安装在什么地方,如果用户把word安装到了别的地方,上述命令便会出错。再如,一个.gif文件,有的用户喜欢用ACD See来打开,有的用户喜欢用IE来打开,有的用户喜欢用豪杰来打开,…… 为了解这种情况我们可以调用Windows的文件关连来打开文件。即所有的文件都用系统默认的程序来打开。这就要调用Windows的Win32 API函数。调用方式如下: DECLARE INTEGER ShellExecute IN shell32.DLL INTEGER HWND,;STRING lpszOP,;STRING lpszFile,;STRING lpszParams,;STRING lpszDir,;INTEGER fsshowcmd DECLARE INTEGER GetDesktopWindow IN win32api HWND = GetDesktopWindow()lpszOP = “open” * 指定要打开的文件名 lpszFile =“c:mlx.doc” lpszParams = “" lpszDir = ”c:temp" fsshowcmd = 1 * 执行ShellExecute命令 LNRETURN = ShellExecute(HWND, lpszOP,lpszFile, lpszParams, lpszDir,fsshowcmd) 可以用任意的文件名来替换上文中的 c:mlx.doc。如果指定的文件名Windows无法找到相应的关连程序,这时程序将不会做出反应。有关的参数可以自行偿试进行修改,以达到最佳效果。 ActionScript与JavaScript在教学中的相互调用 张 智 (三峡电力学院,湖北 宜昌 443000) 摘要:本文重点讨论了ActionScript与JavaScript在教学中的相互调用及控制。关键词:ActionScript语言;JavaScript语言;相互调用 1.问题的由来 ActionScript是Flash中的内置编程语言,JavaScript是网页浏览器采用的网页文本编程语言。虽然这两种编程语言并不相同,但如果在教学中将二者结合起来相互调用,却可以完成许多运用单一编程方式不能完成的网页控制功能。 JavaScript是由Netscape公司开发的一种基于对象和事件驱动并具有安全性能的脚本语言。使用它的目的是与HTML超文本标记语言、Java脚本语言一起实现在一个Web页面中链接多个对象并与Web客户实现交互。像其他脚本语言一样,JavaScript同样也是一种解释性语言,它采用小程序段的方式实现编程,提供一个简易的开发过程。它的基本结构形式与C、C++、VB或Delphi等十分类似。但它不像这些语言一样,需要先编译,而是在程序运行过程中被逐行地解释。它与HTML标识语言结合在一起,非常方便用户的使用和操作。 ActionScript是Flash专属的程序语言,它是在JavaScript标准上发展起来的。ActionScript的语法与样式与JavaScript非常相似,但ActionScript的主要作用是控制Flash动画影片的行为。 为什么需要从Flash调用并执行JavaScript程序呢?这是因为ActionScript是Flash的内置程序,它主要是为控制Flash影片行为而设计的,可是有时我们需要从Flash影片中控制影片之外的浏览器,例如打开新的浏览器窗口、快速移动浏览器窗口的位置或使浏览器窗口中的内容进行滚屏等——这些用户需求不能在Flash中通过ActionScript完成。这种情况下,只有调用JavaScript程序才能满足用户的要求。 为什么需要在JavaScript程序中控制Flash呢?这是因为JavaScript程序可以控制浏览器以及网页文件里面的对象。例如,存取文字方块的内容、设定文件的背景色和加载图片等。但是,如果要在网页中控制Flash影片对象,这就有必要调用 Flash中的ActionScript 来完成。执行Flash对象的方法,或者存取属性的JavaScript语法如下: Document.Flash 对象名称·方法名称()document.Flash 对象名称·属性 上面的语法适用于IE和Netscape浏览器,但是Netscape 6.0和6.01版不支持。 2.在Flash影片中呼叫JavaScript函数控制浏览器窗口 怎样才能在Flash影片中呼叫JavaScript函数来控制浏览器窗口呢? 直接在Flash的内置程序的ActionScript中加入JavaScript程序语句肯定行不通。显然,ActionScript与JavaScript不是相同的语言编程系统,在ActionScript中不能直接识别并编译JavaScript语句。 如果在Flash制作的影片中,通过一个呼叫函数呼叫JavaScript程序,另外把完整的JavaScript程序写在Flash影片中,这样就可以当Flash播放指针指向呼叫指令时,就执行JavaScript程序,达到控制浏览器窗口的目的。 下面介绍这种方法。 getURL()函数是Flash中一个十分重要的动作指令,它可以直接呼叫JavaScript程序。getURL()函数的实际作用是给Flash对象添加超级链接,包括电子邮件链接。它可以利用绝对路径指定一个URL,并将此URL的网页内容载入设置的视窗中,也可以指定传送变量至指定URL中的应用程序,直接呼叫JavaScript函数。 例如,在Flash MX中第1帧(空白关键帧)打开动作指令窗口,输入下面的语句: getURL(“JavaScript: alert(‘呼叫JavaScript函数控制浏览器窗口’);”): 将命令浏览器打开一个警告窗,并显示“呼叫JavaScript函数控制浏览器窗口”的信息。 但要注意,笔者经过实践证明,并非所有的浏览器都支持从getURL()函数执行JavaScript!目前,Mac版的IE4.5和以前的版本、Windows和 Mac 的Netscape6.0和6.01版都不支持。而且当浏览器不支持getURL()函数时,Netscape浏览器警告窗口的信息会出现乱码。 当然,也可以通过Flash中的影片剪辑与按钮来呼叫JavaScript函数。例如,在 Flash影片的按钮中,可以为按钮赋予指令: on(release){ getURL(“javascript:alert(‘Flash MX 真棒!’);”);} 这样,当用户用鼠标点击该按钮时,就会发生指定的事件。 3.使用JavaScrip打开浏览器窗口与控制Flash影片剪辑 JavaScrip程序可以控制浏览器以及网页文件里面的对象。例如,存取文字方块的内容、设定文件的背景色、加载图片等。当然,JavaScrip程序也可以控制Flash对象。执行Flash对象的方法。或者存取属性的JavaScrip语法如下: Document Flash对象名称·方法名称()Document Flash对象名称·属性 这两句语法适用于IE和Netscape浏览器,但是Netscape6.0和6.01版不支持。例如我们要在JavaScript程序中打开一窗浏览器窗口,可以这样编程: 第二篇:ActionScript与JavaScript在教学中的相互调用
其实,ActionScript与JavaScript相互调用后,可以开发的控制功能真不少,大家不妨直接测试上述示例。
参考文献:
[1]赵英杰.Flash MX网页编程宝典.北京希望电子出版社,2002年 [2]蒋民.JavaScript 实例、技巧与应用.清华大学出版社,2003年
第三篇:请问CAD中打开文件怎么会要求输1
请问CAD中打开文件怎么会要求输入“要打开的图形文件名”v 有时AutoCAD死机后,或是因为个人原因优化过注册表,导致打开CAD文件时,弹不出打开的对话框,而是弹出“输入要打开的图形文件名”。有些人碰到这一问题,首先想到的就是重装CAD,有时重装是可以解决,但重装多麻烦。。现在有一较好的方法,解决方法如下:
你可以使用注册表编辑器,打开(开始——运行——regedit)打开注册表 HKEY_CURRENT_USERSoftwareAutodeskAutoCADR17.1ACAD-6001:804FixedProfileGeneral Configuration
此时FileDialog键值应该为0,即文件操作不显示图形界面。改为1即可。
输入FILEDIA,值为1即可.。
第四篇:关联理论在高中英语阅读教学中的应用
摘要:Sperber 和 Wilson 提出的关联理论揭示了人们如何在会话理解过程中根据事物的关联性组织语境,把新信息和已有信息联系起来,得出符合逻辑的结论,它肯定了认知主体、人的心理认知能力的巨大能动作用。从关联理论的角度,众多学者探讨和解释了阅读理解的过程:
1、阅读理解是一个读者与作者交流的过程,阅读的目的主要是为了获取作者所表达的话外意图(交际意义);
2、阅读理解的实质是推理,是一个读者利用自己的百科知识、逻辑知识和词汇知识对新信息进行加工处理的过程;
3、阅读理解是一个读者与作者寻求最佳关联的过程,所依赖的语境是一个动态的并且是相互作用的心理构建。因此,如何选择最佳关联信息构成语境进行推理是提高阅读能力的关键。由于关联理论对阅读理解具有很强的解释力,基于此认识,笔者就关联理论融入到高中英语阅读教学中进行了探索性研究。研究的主要问题有三个:
(1)基于关联理论的阅读教学模式对学生的阅读认知策略意识是否有明显提高?(2)基于关联理论的阅读教学模式是否能明显提高学生的阅读成绩?(3)基于关联理论的阅读教学模式对学生在不同体裁的阅读文章(记叙文、说明文、议论文)的阅读成绩所产生的效果有无差异? 本文是一项实证研究。受试对象是运城平陆中学高一年级的两个班 80 名学生。他们参加了一个学期阅读教学实验。笔者使用 SPSS 11.5 的独立样本 T 检验和配对样本 T 检验对前后两次阅读测试所获得的数据进行统计、分析并结合对实验班学生的访谈结果,得出如下结论:
1、基于关联理论的阅读教学模式能提高学生的阅读认知策略意识,特别是在预测、推理,语境和结构分析这几方面。
2、基于关联理论的阅读教学模式能明显提高学生的阅读成绩。
3、对于不同体裁的阅读文章而言,融入了关联理论的阅读教学模式可以明显提高学生在记叙文方面的阅读成绩,然而在说明文和议论文则不显著。由此可见,将关联理论运用于高中英语阅读教学具有一定的积极作用和实践意义。同时笔者也提出了一些具体的教学启示与不足,希望对目前的高中阅读教学有所帮助。
关键词:关联理论;阅读理解;交流;语境关联理论阅读方式;阅读教学
第五篇:在句子中填上适当的关联词语
在句子中填上适当的关联词语。
1、()老师苦口婆心的教育他,他()不认真学习。
2、小晴()学习成绩好,()思想品德好。
3、()从哪个角度欣赏这件工艺品,()那么美丽。
4、我问小刚:“你()参加美术小姐,()能加航模小组?
5、做任何事情,()你勤奋努力、有恒心,()一定会成功。
6、做题目不掌握方法,()你做再多的题目,()是无济于事。
7、()你到了这里,()安心地在这里工作吧。
8、小军()刻苦锻炼,()考上了警校。
9、写完了作业,()玩耍,()看看课外书,多增长自己的知识。
11、()明天刮风,还是下雨,你()要去学校。
12、这里的泉水()清澈,()甘甜。
13、马上就要期末考试了,()认真复习,()能考出好成绩。
三、用恰当的关联词把下面的两句话合并成一句。
1、天气很冷。爷爷要坚持早锻炼。
2、我们现在不努力学习。
将来不能担当起建设祖国的重任。
3、困难有多大。我们能克服。
4、他热情地为同学们服务。受到同学们的好评。
5、你答应找小兰一起去看画展。
应该准时去找他。
6、刘胡兰牺牲自己的生命。说出党的秘密。
7、同学们走着。谈论着。
8、王老师关心我们的学习。关心我们的身体。
9、他遇到刮风下雨。他坚持上班。
10、小江喜欢唱歌。小江喜欢跳舞。
四、改正下列句子中的错别字。
1、今天的试验十分成攻,大家兴彩烈地拍手祝贺。()
2、李时珍不怕山高路远,不怕酷署严寒,走偏盛产药材的明山。()
3、青明节到了,我们全校地师生去列士林圆,记念革命先烈。()
4、老师背课认真,很辛苦,我们上课尊守记律,认正听讲。()
5、他工作很认真,也能蜜切联系群众,就是皮气太急躁了。()
6、只要你不丢师付的脸,不怀师付的明声就够了。()
7、我们少先队员要继成革命的光荣传通,并发杨广大。()
8、中队主提队会在热列地气分中进行着,好节目屈出不穷。()
9、我们要向雷锋叔叔哪样,尊照毛主席坚苦愤斗的教道。()
10张老师经常背课到深夜,我们要体晾老师的心苦。()
11、坚侍长跑,即煅练了身体,也磨练也意知。()
12、我由于当时过分激动和幸奋,竞然妄记问他的名子。()
13、一辆时样新颖地气车,栽着孩子们,飞快得象前史去。()
14、蔺相如知道秦王线豪没有拿成换壁的城意。()
15、多少劳动人民的血汉和智惠,才疑节成这前不见头,后不尾的万里长城。(16、这样气魄雄雄伟的公程,在世界厉使上是一个伟大的奇纪。()
17、打仗的时候,城台之间可以互乡呼。()
18、周瑜看到诸葛亮迁有材干,心理很妒疾。()
19、贝多芬望了望站在他身傍的穷兄弟两,借着青幽的月光,按起琴建来。(20、人固有一死,或重于泰山,或轻于雄毛。()
21、红军的主力度过了天险大渡河,浩浩汤汤地奔仆抗日的再前线。()
22、周瑜很高兴,叫诸葛亮当面立下军令壮,又摆了洒席招待他。()))