VB中反三角函数的计算.doc

上传人:桔**** 文档编号:543012560 上传时间:2023-09-22 格式:DOC 页数:138 大小:724.51KB
返回 下载 相关 举报
VB中反三角函数的计算.doc_第1页
第1页 / 共138页
VB中反三角函数的计算.doc_第2页
第2页 / 共138页
VB中反三角函数的计算.doc_第3页
第3页 / 共138页
VB中反三角函数的计算.doc_第4页
第4页 / 共138页
VB中反三角函数的计算.doc_第5页
第5页 / 共138页
点击查看更多>>
资源描述

《VB中反三角函数的计算.doc》由会员分享,可在线阅读,更多相关《VB中反三角函数的计算.doc(138页珍藏版)》请在金锄头文库上搜索。

1、VB中反三角函数的计算By colleen 发表于 2007-3-28 14:20:06 今天上课前一个学生问到VB中反三角函数的计算问题,但由于马上就要上课了,而且自己对VB中的反三角函数也不够熟悉,所以决定和他一起在课后探讨。现在经过整理,大致如下:Atn()是VB反正切函数,VB不提供其他反三角函数,不过可以用下列公式导出:Inverse Sine (反正弦):Arcsin(X) = Atn(X / Sqr(-X * X + 1)Inverse Cosine (反余弦):Arccos(X) = Atn(-X / Sqr(-X * X + 1) + 2 * Atn(1)Inverse Se

2、cant (反正割):Arcsec(X) = Atn(X / Sqr(X * X - 1) + Sgn(X) - 1) * (2 * Atn(1)Inverse Cosecant (反余割):Arccosec(X) = Atn(X / Sqr(X * X - 1) + (Sgn(X) - 1) * (2 * Atn(1)以上这些公式,其实就是应用了数学中的各类三角函数和正切函数之间的关系导出的。其中需要注意的是其中的 X 不能等于正负1。由于最近工作忙,多日未打理博客了,故今日有闲,发一个VB调用API涵数画正弦波的代码供大家参考.代码如下:Option ExplicitDim Points(

3、) As POINTAPIDim NumPoints As IntegerDim ZanTin1Dim apik1Dim apik2Dim VConst pi = 3.14159265358979Private Type POINTAPI x As Long y As Long End Type Private Declare Function Polyline Lib gdi32 (ByVal hdc As Long, lpPoint As POINTAPI, ByVal nCount As Long) As LongPrivate Sub Picture1_MouseDown(Button

4、 As Integer, Shift As Integer, x As Single, y As Single)Select Case ButtonCase 1ReDim Points(0 To 2)V = 100Picture1.ClsZanTin1 = Trueapik1 = 0Do While ZanTin1apik1 = apik1 + 1NumPoints = 2apik2 = (Sin(pi / 180 * apik1) * VPoints(1).x = apik1 - 1Points(2).x = apik1Points(1).y = 200 - apik2Points(2).y

5、 = 200 - apik2If Polyline(Picture1.hdc, Points(1), NumPoints) = 0 Then Exit SubIf apik1 742 ThenZanTin1 = FalseEnd IfDoEventsLoopCase 2EndEnd SelectEnd Sub这只是一个例子,将此段代码稍微修改一下,也可画方波,阶梯波,三角波,和任意曲线,特别适用于对记录画线速度有要求的场合.如虚拟示波器.记录仪表等.看这段代码:Private Sub Command1_Click()Shell control.exeEnd Sub一个简单的按钮,执行一句she

6、ll,就打开了控件面板。如果我们这样子做写,也打开了控件面板:Shell rundll32.exe Shell32.dll,Control_RunDLL, 1看到了,这便是系统调用,比用API函数好用多了。当然,如果想打开控件面板中相应的内容,则可以这样子写:Shell rundll32.exe Shell32.dll,Control_RunDLL appwiz.cpl说明:appwiz.cpl是添加删除文件组件,是专用控件面板打开。你完全可以找出系统所有的cpl文件,试着用此法调用。当然,你想更简单写,就这样子:shell control.exe appwiz.cpl因为,cpl文件专用co

7、ntrol.exe打开。下面,我们要想打C盘,则这样写:Shell explorer.exe c:, 1explorer.exe是资源管理器程序,他可以打开所有windows里的文件夹。如果要打开并运行一个具体文件,则这样子写:Shell C:Program FilesCisco SystemsCisco TFTP ServerTFTPServer.exe,1tftpserver.exe便是我想打开的具体可执行文件名。下面我们来看在windows2000下面调用管理控件台,实现各种服务器管理。Shell C:WINNTsystem32mmc.exe C:WINNTsystem32gpedit.

8、msc调用控件台mmc.exe打开msc文件,msc文件有多少,你自己可以在你的windows2000下去找找看。一. 调用系统“创建快捷方式”向导 是否为VB不支持创建快捷方式而于着急呢?虽然 您可以调用vb5stkitDll中的fCreateShellLink函 数,但它是为安装程序设计的,快捷方式的默认路径 总是从当前用户的“Start MenuPrograms”开始,也 就是说,如果您的Windows95装在C盘上,您无法通过 fCreateShellLink函数把快捷方式创建到D盘上去。 现在,给大家介绍一种极为方便、巧妙的方法: 用Shell语句调用系统“创建快捷方式”向导。 新建

9、一个项目,在窗体上放一个按钮,双击此按 钮,加入以下代码: Private Sub Command1_Click() Open App.Path temp.lnk For Output As #1 Close #1 以上两句在程序所在目录建立一 个临时文件 Shell Rundll32.exe AppWiz.Cpl,NewLinkHere App.Path temp.lnk End Sub (注意:Shell语句中NewLinkHere后面跟着一个 空格才是引号,否则将出错。) 运行程序,按一下命令按钮,怎么样?“创建快 捷方式”向导出现了,如果创建成功,快捷方式将取 代临时文件temp.ln

10、k的位置,如果选取消,temp.lnk 也会自动消失。当然,您可以在硬盘的任意位置建立 temp.lnk。好,现在又可以为您的程序增添一项新功 能了。Enjoy! 二. Rundll32.exe的用途 我们知道,用Shell语句只能调用可执行文件,即 exe、com、bat和pif文件,有时我们想要调用其他一 些系统功能该怎么办呢?此时,Windows提供的 Rundll32.exe可大显身手了。下面我们来认识一下这 些用法,也许会给您带来一点惊喜。 1要打开设置系统时间的控制面板文件 (Timedate.cpl),只需运行如下代码: Shell Rundll32.exe Shell32.dl

11、l,Control_RunDLL Timedate.cpl 至于打开其他控制面板文件,相信您一定能够举 一反三,尝试一下,换个文件名就成了。 2要运行某一快捷方式(*.lnk)则可以用以下 代码: She11 Rundll32.exe url.dll, FileProtocolHandler X (X代表要运行的文件,包括 路径,下同。 3. 也可以这样写来打开ActiveMovie控制: Shell RUNDLL32.EXE amovie.ocx,Rundll,1 而用Shell RUNDLL32.EXE amovie.ocx,Rundll /play X,1 将直接播放媒体文件。 4. S

12、hell rundll32.exe desk.cpl,InstallScreenSaver X”当然是安装屏幕保 护啦,如果你写了一个屏幕保护程序,那么可以在安 装程序中写上它,而不一定要装到system目录下。顺 便提一下,VB不是自捞一个“Application Setup Wizard”么?它的VB源代码都在安装目录下的 “setupkitsetup1”中放着呢,好好把它研究一下。 你完全能做出富有个性的安装程序来。 5.按住shift键,右击某一文件,菜单中会出现 “打开方式”选项,这也许已不是什么秘密。但现在, 用shell rundll32.exe shell32.dll Open

13、As_RunDLL X 便能直接调用“打开方式”框。 6. 甚至能用这样一句来打印文件(包括HTML所 支持的所有文本与图像格式): Shell rundll32.exe MSHTML.DLL,PrintHTML X”, 1Shell(pathname,windowstyle) Shell 函数的语法含有下面这些命名参数: 部分描述pathname必要参数。Variant (String),要执行的程序名,以及任何必需的参数或命令行变量,可能还包括目录或文件夹,以及驱动器。在Macintosh中,可以使用MacID函数来指定一个应用程序的署名而不是名称。下面的例子使用了Microsoft Wo

14、rd的署名: Shell MacID(MSWD)Windowstyle可选参数。Variant (Integer),表示在程序运行时窗口的样式。如果 windowstyle 省略,则程序是以具有焦点的最小化窗口来执行的。在Macintosh(系统7.0或更高)中,windowstyle仅决定当应用程序运行时是否获得焦点。windowstyle 命名参数有以下这些值: 常量值描述vbHide0窗口被隐藏,且焦点会移到隐式窗口。常数vbHide在Macintosh平台不可用。VbNormalFocus1窗口具有焦点,且会还原到它原来的大小和位置。VbMinimizedFocus2窗口会以一个具有焦点的图标来显示。VbMaximizedFocus3窗口是一个具有焦点的最大化窗口。VbNormalNoFocus4窗口会被还原到最近使用的大小和位置,而当前活动的窗口仍然保持活动。VbMinimizedNoFocus6窗口会以一个图标来显示。而当前活动的的窗口仍然保持活动。编辑本段说明如果 Shell 函数成功地执行了所要执行的文件,则它会返回程序的任务 ID。任务 ID 是一个唯一的数值,用来指明正在运行的程序。如果 Shell 函数不能打开命名的程序,则会产生错误。Declare Function AdjustWindowRect Lib user32 Alias Adjus

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号