vb 怎样使窗口跟随鼠标坐标移动
我想使用以下代码使Form1的Top跟随鼠标的y坐标移动,但是我鼠标都移动到窗口最下面了,Form1的窗口却还没有到最下面?请问是不是还要有什么单位转换之类的?还是应增加...
我想使用以下代码使Form1的Top跟随鼠标的y坐标移动,但是我鼠标都移动到窗口最下面了,Form1的窗口却还没有到最下面?请问是不是还要有什么单位转换之类的?还是应增加什么代码?请大虾们帮帮忙!!不胜感激!
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As LongPrivate Type POINTAPI
x As Long
y As Long
End TypeDim pos As POINTAPI Private Sub Timer1_Timer()
GetCursorPos pos
Label1.Caption = pos.x & "," & pos.yForm1.Top = pos.y
End Sub 展开
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As LongPrivate Type POINTAPI
x As Long
y As Long
End TypeDim pos As POINTAPI Private Sub Timer1_Timer()
GetCursorPos pos
Label1.Caption = pos.x & "," & pos.yForm1.Top = pos.y
End Sub 展开
1个回答
2013-12-02
展开全部
使用CToolTipCtrl让鼠标提示窗口跟着鼠标在屏幕上移动
用一个跟随便鼠标移的提示窗口显示鼠标坐标位置的例子1、新建一工程(我这是单文档界面)3、在View的OnInitialUpdate(……)函数中写入m_tool的初始化代码
m_tool.Create(this);
m_tool.AddTool(this,"windows");
m_tool.SetDelayTime(10);
m_tool.Activate(true);4、在View的PreTranslateMessage(……)函数加入m_tool消息处理
{
m_tool.RelayEvent(pMsg);
return CScrollView::PreTranslateMessage(pMsg);
}5、在view的鼠标移动事件中加入如下代码:
CString str;
str.Format("%d , %d",point.x,point.y);
m_tool.UpdateTipText(str,this);基本上,按上面这几步完成就可以达到简单的要求了。
从这一点可看出,如果在鼠标移动时,检索出鼠标位于视图中某个对象(如点,线,面,和其它物体),则可以即时把这个物体的名称以信息提示窗的形式显示出来
用一个跟随便鼠标移的提示窗口显示鼠标坐标位置的例子1、新建一工程(我这是单文档界面)3、在View的OnInitialUpdate(……)函数中写入m_tool的初始化代码
m_tool.Create(this);
m_tool.AddTool(this,"windows");
m_tool.SetDelayTime(10);
m_tool.Activate(true);4、在View的PreTranslateMessage(……)函数加入m_tool消息处理
{
m_tool.RelayEvent(pMsg);
return CScrollView::PreTranslateMessage(pMsg);
}5、在view的鼠标移动事件中加入如下代码:
CString str;
str.Format("%d , %d",point.x,point.y);
m_tool.UpdateTipText(str,this);基本上,按上面这几步完成就可以达到简单的要求了。
从这一点可看出,如果在鼠标移动时,检索出鼠标位于视图中某个对象(如点,线,面,和其它物体),则可以即时把这个物体的名称以信息提示窗的形式显示出来
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询