VB里怎样让鼠标指针移动到按钮上时弹出提示对话框

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VB里怎样让鼠标指针移动到按钮上时弹出提示对话框相关的知识,希望对你有一定的参考价值。

就是弹出提示信息对话框,,离开按钮后信息提示消失

新建一个工程,再添加一个窗体。在Form2上添加一个标签。在form1上添加一个按钮,将下面代码复制到form1的代码窗口
Dim Bj As Boolean
Private Sub Command1_Click()
Unload Form2
End Sub
Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Bj = False Then
MyMsgbox "怎么样,我弹出来了!", "弹出窗口"
Bj = True
End If
End Sub
Private Sub Form_Load()
Bj = False
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Bj = False
End Sub
Private Sub MyMsgbox(Optional Ts As String, Optional Bt As String)
On Error Resume Next
Form2.Label1 = Ts
Form2.Caption = Bt
Form2.Show
End Sub
参考技术A 设置这个按钮的 ToolTiptext 的值为提示内容即可。
如:command1.tooltiptext="提示信息"
参考技术B 按钮有个GotFocus事件
在这个事件里写个弹出信息就可以了。追问

能具体点吗? 我是初学者哈。。谢谢!!

追答

找到按钮的事件

private sub command1_GotFocus

msgbox "test"

end sub

参考技术C 如果你用的是标准控件,那里控件里面有一个参数是用来干这个活的,你自己找一下吧,我不记得是哪个了

对话框捕获鼠标移动消息,实现“逃跑按钮”

在弹出的对话框上显示逃跑按钮,当鼠标移动到该按钮上时,该按钮隐藏,而在别的位置上显示一个一模一样的按钮,鼠标再次置于新按钮上时,该按钮再次隐藏而在另一位置显示,用户感觉按钮好像在自动逃跑移动;

1、新建一个基于对话框的MFC工程,将其资源窗口的对话框中的自带控件删除,在不同位置添加两个一模一样的按钮控件

  

2、此处需要让按钮来捕获鼠标移动的消息,但是该对话框中有两个一样的按钮,故需要创建一个派生于CButton类的新的类CNewButton,为两个按钮控件分别添加成员变量并与CNewButton类关联

  

  

  

  会弹出提示框,要在CTestDlg类的头文件中包含CNewButton类的头文件--“NewButton.h”;

  在类窗口的CNewButton类上右击添加WM_MOUSEMOVE的消息响应函数:

  

  在CNewButton类中添加成员变量:CNewButton* m_pBtn,因两个按钮的成员变量均关联至CNewButton类,故两个按钮对象内部均有了m_pBtn变量,利用此变量互相指向对方的首地址;在CTestDlg类的OnInitDialog函数中先互相将对方的首地址交换保存,当对话框显示后捕获到鼠标移动到一个按钮上时,此时该按钮的m_pBtn指向的已是对方的首地址了,再用m_pBtn调ShowWindow函数即显示对方按钮了; 

BOOL CTestDlg::OnInitDialog()
{
    ......  
    // TODO: Add extra initialization here

    m_btn1.m_pBtn=&m_btn2;
    m_btn2.m_pBtn=&m_btn1;
    
    return TRUE;  // return TRUE  unless you set the focus to a control
}
void CNewButton::OnMouseMove(UINT nFlags, CPoint point) 
{
    // TODO: Add your message handler code here and/or call default
    ShowWindow(SW_HIDE);
    m_pBtn->ShowWindow(SW_SHOW);

    CButton::OnMouseMove(nFlags, point);
}

  要在弹出对话框时只显示一个按钮,将另一个按钮的属性中的“可见”去掉即可;

  可利用SetWindowPos函数设置按钮在屏幕上移动的位置;

 

以上是关于VB里怎样让鼠标指针移动到按钮上时弹出提示对话框的主要内容,如果未能解决你的问题,请参考以下文章

在VB中怎么用代码弹出输入对话框

android 怎样设置单击一个按钮,不会重复弹出dialog

android 怎样设置单击一个按钮,不会重复弹出dialog

js怎样让鼠标放到弹出的二级菜单上时不消失呢?

怎么让鼠标自动移动

当鼠标放在按钮上时让指针变为手型