⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 040107.htm

📁 提供一个VB学习教程,入门级。来源于网上
💻 HTM
字号:
<html>
<head>
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>vb study</title>
<style>
<!--
td {font-size: 9pt}
A:link {text-decoration: none; color: #0033cc;font-size: 9pt}
A:visited {text-decoration: none; color: #0066CC;font-size: 9pt}
A:active {text-decoration: none; color: #ff0000; font-size: 9pt}
A:hover {text-decoration: underline; color: #000000;font-size: 9pt}
-->
</style>
</head>
<body>
<div align="center">
  <center>
  <table border="0" cellpadding="0" cellspacing="0" width="98%">
    <tr>
      <td width="100%"><a href="#">你的位置</a>:<a href="http://www.xxby.com" target="_blank">华生小屋</a>--<a href="#">VB学习</a>--<a href="#">API函数</a></td>
    </tr>
    <tr>
      <td width="100%">
        <p align="center">系统类函数</td>
    </tr>
    <tr>
      <td width="100%"><br>
        检测是否安装了声卡:auxGetNumDevs函数<br>
        声明:<br>
        Public Declare Function auxGetNumDevs Lib &quot;winmm.dll&quot; () As Long<br>
        如果安装了声卡,则函数返回值为零,否则为非0。调用如:<br>
        Dim i As Integer<br>
        i = auxGetNumDevs()<br>
        If i = 0 Then<br>
        MsgBox &quot;本机安装有声卡&quot;<br>
        Else<br>
        MsgBox &quot;本机无声卡&quot;<br>
        End If ??????<br>
        ==========================================================<br>
        获得WINDOWS已经运行的时间:GetTickCount函数。<br>
        此函数以毫秒为单位,返回系统已运行了多长时间,声明:<br>
        Private Declare Function GetTickCount&amp; Lib &quot;kernel32&quot; ()<br>
        很简单,调用如:m=GetTickCount.返回数值很大,如2550550毫秒。 <br>
        ==================================<br>
        获取与windows环境有关的系统信息:GetSystemMetrics函数<br>
        此函数获取各种系统尺寸,如窗口的边框大小,指针大小,屏幕大小,标准图标大小,菜单栏上按纽大小等,还有是否安装了鼠标及鼠标按纽数量等。<br>
        声明:<br>
        Declare Function GetSystemMetrics Lib &quot;user32&quot;(ByVal nIndex As Long) As Long<br>
        调用如:<br>
        Const SM_CXSCREEN = 0 屏幕宽度<br>
        Const SM_CYSCREEN = 1 屏幕高度 <br>
        x = GetSystemMetrics(SM_CXSCREEN)<br>
        y = GetSystemMetrics(SM_CYSCREEN)<br>
        Print x, y<br>
        只有1个参数:nIndex--指明要获取哪方面信息。如指定为下面的常数:<br>
        SM_CLEANBOOT 指定启动模式。0=普通模式;1=带网络支持的安全模式 <br>
        SM_CMETRICS 可用系统环境的数量 <br>
        SM_CMOUSEBUTTON 鼠标按钮(按键)的数量。如没有鼠标,就为零 <br>
        SM_CXBORDER, SM_CYBORDER 尺寸不可变边框的大小 <br>
        SM_CXCURSOR, SM_CYCURSOR 标准指针大小 <br>
        SM_CXDLGFRAME, SM_CYDLGFRAME 对话框边框的大小 <br>
        SM_CXDOUBLECLK, SM_CYDOUBLECLK 双击区域的大小(参考注解) <br>
        SM_CXFRAME, SM_CYFRAME 尺寸可变边框的大小(在win95和nt 4.0中使用SM_C?FIXEDFRAME) <br>
        SM_CXFULLSCREEN, SM_CYFULLSCREEN 最大化窗口客户区的大小 <br>
        SM_CXHSCROLL, SM_CYHSCROLL 水平滚动条上的箭头大小 <br>
        SM_CXHTHUMB, SM_CYHTHUMB 滚动块在水平滚动条上的大小 <br>
        SM_CXICON, SM_CYICON 标准图标的大小 <br>
        SM_CXICONSPACING, SM_CYICONSPACING 桌面图标之间的间隔距离。在win95和nt 4.0中是指大图标的间距 <br>
        SM_CXMAXIMIZED, SM_CYMAXIMIZED 最大化窗口的默认尺寸 <br>
        SM_CXMAXTRACK, SM_CYMAXTRACK 改变窗口大小时,最大的轨迹宽度 <br>
        SM_CXMENUCHECK, SM_CYMENUCHECK 菜单复选号位图的大小 <br>
        SM_CXMENUSIZE, SM_CYMENUSIZE 菜单栏上的按钮大小 <br>
        SM_CXMIN, SM_CYMIN 窗口的最小尺寸 <br>
        SM_CXMINIMIZED, SM_CYMINIMIZED 最小化的窗口必须填充进去的一个矩形小于或等于SM_C?ICONSPACING <br>
        SM_CXMINTRACK, SM_CYMINTRACK 窗口的最小轨迹宽度 <br>
        SM_CXSCREEN, SM_CYSCREEN 屏幕大小 <br>
        SM_CXSIZE, SM_CYSIZE 标题栏位图的大小 <br>
        SM_CXSIZEFRAME, SM_CYSIZEFRAME 具有WS_THICKFRAME样式的窗口的大小 <br>
        SM_CXSMICON, SM_CYSMICON 小图标的大小 <br>
        SM_CXSMSIZE, SM_CYSMSIZE 小标题按钮的大小 <br>
        SM_CXVSCROLL, SM_CYVSCROLL 垂直滚动条中的箭头按钮的大小 <br>
        SM_CYCAPTION 窗口标题的高度 <br>
        SM_CYKANJIWINDOW Kanji窗口的大小(Height of Kanji window) <br>
        SM_CYMENU 菜单高度 <br>
        SM_CYSMCAPTION 小标题的高度 <br>
        SM_CYVTHUMB 垂直滚动条上滚动块的高度 <br>
        SM_DBCSENABLED 如支持双字节则为TRUE <br>
        SM_MENUDROPALIGNMENT 如弹出式菜单对齐菜单栏项目的左侧,则为零 <br>
        SM_MOUSEPRESENT 如安装了鼠标则为TRUE <br>
        SM_NETWORK 如安装了网络,则设置位0。其他位保留未用 <br>
        SM_PENWINDOWS 如装载了支持笔窗口的DLL,则表示笔窗口的句柄 <br>
        SM_SECURE 如安装了安全(保密)机制,则为TRUE <br>
        SM_SHOWSOUNDS 强制视觉提示播放声音 <br>
        SM_SLOWMACHINE 系统速度太慢,但仍在运行中 <br>
        注解 <br>
        双击区域指定屏幕上一个特定的显示区域,只有在这个区域内连续进行两次鼠标单击,才有可能被当作双击事件处理 <br>
        ------------------------------------------------<br>
        读取或设置Windows各项系统参数:SystemParametersInfoA函数<br>
        声明:<br>
        Declare Function SystemParametersInfoA Lib &quot;user32&quot;(ByVal uAction As Long, ByVal uParam As Long, lpvParam As Any, ByVal fuWinIni As Long)As long<br>
        调用如:<br>
        禁止(或允许)Ctrl+Alt+Del和Alt+Tab键:<br>
        Dim pOld as Boolean<br>
        x=SystemParametersInfoA(97,True(或False),pOld,0)<br>
        其中的参数如下:<br>
        uAction Long,指定要设置的系统参数。是1个SPI_GET…(读取)或SPI_SET…(设置)常数,指定要读取或设置哪方面的内容。参考uAction常数表 (见附1)。<br>
        uParam Long,与lpvParam参数有关,如可以是指定的lpvParam设置的值,或是指定lpvParam字符串缓冲区的长度等。参考uAction常数表 。<br>
        lpvParam Any,要读取或设置的参数的结构。是引用传递的Integer、Long,String或结构类型数据,具体用法参考uAction常数表 .注意,该参数必须定义成正确的数据类型 如上面例中要把pOld先定义为Boolean类型。<br>
        fuWinIni Long,0或&amp;H1或&amp;H2。这个函数设置的用户配置参数保存在win.ini或注册表里,或同时保存在这两个地方。这个参数规定了在修改和设置系统参数的时候,是否立即更新用户所作的设置(修改win.ini或注册表)。为零禁止修改,为: <br>
        SPIF_UPDATEINIFILE(值为&amp;H1):更新win.ini和(或)注册表中的用户配置文件 <br>
        SPIF_SENDWININICHANGE(值为&amp;H2): 倘若也设置了SPIF_UPDATEINIFILE,则将一条WM_WININICHANGE消息发给所有应用程序。这条消息告诉应用程序已经改变了用户配置设置。注:在调用这个函数之前,特别要注意将lpvParam参数定义成正确的数据类型 <br>
        注:将SystemParametersInfo的第四个参数fuWinIni设置为0或&amp;H2,函数都会通知其它窗口变化,但也都不会更改注册表。只要重新启动计算机,系统的变化就会被取消。<br>
        --------------------------------------------<br>
        弹出&quot;关机&quot;对话框:#60函数<br>
        这个函数就象在&quot;开始&quot;菜单中选择&quot;关闭系统&quot;项一样,会弹出一个关机对话框,询问是关机,重启还是休眠。如果在WIN98上这个函数没多大用,要关机不如直接调用ExitWindows函数或直接Shell &quot;Rundll32.exe User.exe,ExitWindows&quot;,而在WIN2000中,好象上述办法不行了,我就用了这个函数来调出关机对话框,然后用keybd_event过程模拟击键来操作关机。声明:<br>
        Public Declare Function ExitDialog Lib &quot;shell32&quot; Alias &quot;#60&quot; (ByVal lType As Long) As Long 注意:由于#号不能出现在VB函数名称的开头,因此要用Alias把它作为别名列开,调用如:ExitDialog 1便可,参数lType指定是关机,重启还是休眠(好象对Win2000无效),值取0-8中的一整数。以下是一个Win2000休眠的例子:<br>
        Private Sub Form_Load()<br>
        Timer1.Enabled = True<br>
        ExitDialog 1<br>
        End Sub
        <p>Private Sub Timer1_Timer()<br>
          Static m As Integer<br>
          m = m + 1<br>
          For a = 1 To 4<br>
          keybd_event 40, 0, 0, 0 按四次向下方向键,确保选中&quot;休眠&quot;选项。<br>
          keybd_event 40, 0, 2, 0<br>
          Next a<br>
          keybd_event 13, 0, 0, 0 按下回车。确定。<br>
          keybd_event 13, 0, 2, 0<br>
          If m = 7 Then Unload Me 连续操作七遍。以防关机速度缓慢。<br>
          End Sub</p>
        <p align="center">
        <br>
        &lt; <a href="040106.htm">上一页</a>--<a href="http://www.xxby.com" target="_blank">华生小屋</a>--<a href="040108.htm">下一页</a>     
        &gt;<br>
      </td>
    </tr>
  </table>
  </center>
</div>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -