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

📄 ba66.htm

📁 VB教程
💻 HTM
字号:
<HTML>
<HEAD>
<TITLE>怎样限制鼠标移动</TITLE>
 
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
 
</head>
<p align="center"><script src="../../1.js"></script></a>
<BODY topMargin=4 vLink=#0000ff>
<TABLE border=0 cellPadding=0 cellSpacing=0 width="100%">
  <TBODY>
  <TR>
    <TD height="52"> 
      <DIV align=center>
      <CENTER>
          <table border=0 cellpadding=0 cellspacing=0 width=679 align="center">
            <tbody> 
            <tr> 
              <td width=200 height="59"> 
                 
    </TD></TR><!--msnavigation--></TBODY></TABLE>
<table border=0 cellpadding=0 cellspacing=0 width="100%">
  <tbody> 
  <tr><!--msnavigation--><td valign=top height="123"> 
      <div align=center> 
        <table border=1 bordercolor=#b9d9ff cellpadding=0 cellspacing=0 
      class=table width=755>
          <center>
            <tr> 
               
              <td width="100%" height="3">
                <div align="center"> <strong><b>怎样限制鼠标移动</b>  </strong></span></div>
              </td>
            </tr>
            <tr> 
              <td 
            width="100%" class="unnamed1" height="124"> 
                <div align="left">
                  <p align="center">&nbsp;</p>
                  <p align="center"><font face="宋体" size="-1">本文介绍如何限制鼠标在窗口的指定范围内移动。这个技术在需要防止用户鼠标在指定区域内活动时非常有用。例如在一个射击游戏中,需要限制鼠标在射击区内移动。<br>
                    <br>
                      操作步骤<br>
                      1、建立一个新工程项目,缺省建立窗体FORM1<br>
                    <br>
                      2、添加一个新模体<br>
                    <br>
                      3、粘贴下面代码到新模体 <br>
                    <br>
                    Option ExplicitDeclare Function ClipCursor Lib &quot;user32&quot; 
                    (lpRect As Any) As Long<br>
                    Declare Function ClipCursorClear Lib &quot;user32&quot; Alias 
                    &quot;ClipCursor&quot; (ByVal lpRect As Long) As Long<br>
                    Declare Function ClientToScreen Lib &quot;user32&quot; (ByVal 
                    hwnd As Long, lpPoint As POINTAPI) As Long<br>
                    Type RECT<br>
                    Left As Long<br>
                    Top As Long<br>
                    Right As Long<br>
                    Bottom As Long<br>
                    End Type<br>
                    Type POINTAPI<br>
                    X As Long<br>
                    Y As Long<br>
                    End Type<br>
                    Public RetValue As Long<br>
                    Public ClipMode As Boolean<br>
                    <br>
                    Public Sub SetCursor(ClipObject As Object, Setting As Boolean)<br>
                    ' used to clip the cursor into the viewport and<br>
                    ' turn off the default windows cursor<br>
                    <br>
                    Dim CurrentPoint As POINTAPI<br>
                    Dim ClipRect As RECT<br>
                    <br>
                    If Setting = False Then<br>
                    ' set clip state back to normal<br>
                    RetValue = ClipCursorClear(0)<br>
                    Exit Sub<br>
                    End If<br>
                    <br>
                    ' set current position<br>
                    With CurrentPoint<br>
                    .X = 0<br>
                    .Y = 0<br>
                    End With <br>
                    ' find position on the screen (not the window)<br>
                    RetValue = ClientToScreen(ClipObject.hwnd, CurrentPoint) <br>
                    ' designate clip area<br>
                    With ClipRect<br>
                    .Top = CurrentPoint.Y<br>
                    .Left = CurrentPoint.X<br>
                    .Right = .Left + ClipObject.ScaleWidth<br>
                    .Bottom = .Top + ClipObject.ScaleHeight<br>
                    End With ' clip it<br>
                    RetValue = ClipCursor(ClipRect)<br>
                    <br>
                    End Sub<br>
                    <br>
                      4、添加一个图片框控件(PICTURE1)到窗体(FORM1)<br>
                    <br>
                      5、设置PICTURE1的尺寸和FORM1的一样大<br>
                    <br>
                      6、在PICTURE1的CLICK事件中添加以下代码:<br>
                    <br>
                    Private Sub Picture1_Click()<br>
                    ClipMode = Not ClipMode<br>
                    SetCursor Picture1, ClipMode<br>
                    End Sub<br>
                    <br>
                      7、保存工程项目<br>
                    <br>
                      8、运行程序。在图片框单击鼠标,鼠标将被包含在图片框控件的区域内。要释放限制状态只需再次单击鼠标。<br>
                    <br>
                    <b>注意:</b><br>
                      如果释放限制状态失败,鼠标将被永久限制,只能用重新启动机器来解决。另一个限制鼠标活动范围的方法是关闭鼠标,用其他图象代替光标,例如手枪。<br>
                    <br>
                    <br>
                    转载自popcool开发专区<b>(文/梁维彪)</b></font></p>
                        </div>
              </td>
            </tr>
          </center>
          <tr> 
            <td width="100%" class="unnamed1"> 
              <p align=right><a href="ba65.htm">(上一页)</a>---<a href="ba67.htm">(下一页)</a></p>
            </td>
          </tr>
          <tr> 
            <td width="100%" class="unnamed1"> 
               
    </td>
  </tr>
  <!--msnavigation--></tbody>
</table>
<p align="center"><script src="../../2.js"></script></a>
</body>
</html>

⌨️ 快捷键说明

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