自己做了一个按扭控件,怎么样让它得到焦点时, 同mouse_move()的变化效果一样?应该怎么做啊?
解决后马上结帖.......

解决方案 »

  1.   

    http://www.efile.com.cn/efile/qyii/FreeButton.rar还没添加事件响应的...试试~!是不是想要这样的效果?
      

  2.   

    在控件容器的gotFocus()时间中写:Private Sub UserControl_GotFocus()
       call mouse_move '对应的效果变化函数
    End Sub
      

  3.   

    1事件控制
    控件名.gotFocus()
    call mouse_move
    end sub()
    2控件取焦点控件名.setfocus
      

  4.   

    Private Sub UserControl_GotFocus()
       call mouse_move '对应的效果变化函数
    End Sub我写上了这句,但是它得到焦点还是没有mouse_move时的效果,
      

  5.   

    to:::
              lzj34(缘来如此) 1事件控制
    控件名.gotFocus()
    call mouse_move
    end sub()
    2控件取焦点控件名.setfocus
    用不用写
       event gotfocus()
    啊,怎么我一写上这名话就说和VB里的gotfocus冲突啊。
      

  6.   

    我是只想让我做的这个按扭控件在得到焦点的时候,能够像在有mouse_move时四周出现黄边。。老大们,给个简单点的办法啊
      

  7.   

    那得用API来画哦!VC的我知道这里有说:http://www.vckbase.com/document/viewdoc.asp?id=551
    那位大侠能把它改成VB,造福人群?
      

  8.   

    Private Sub UserControl_GotFocus()
       call mouse_move '对应的效果变化函数
    End Sub我写上了这句,但是它得到焦点还是没有mouse_move时的效果,
    -------------------------------------------------------------------
    怎么可能,你看看我以前写的一个简单按钮控件的例子吧,其中就有获得焦点的特殊效果处理,你可以参考一下。。
    http://lookhere.8u8.com/control.rar
      

  9.   

    要得到MouseOver和MouseLeave不容易
    不过至于你说的这种情况,我赞成“ dragon525”的说法:
    Private Sub UserControl_GotFocus()
       call mouse_move
    End Sub
      

  10.   

    用不着吧~~~
    得到MouseOver和MouseLeave 仅仅需要一个hwnd属性(不是子类),和当前鼠标在这个句柄指向的控件的face上的x,y坐标就好了!MouseMove都有提供!
      

  11.   

    我以前也做过VB控件,曾经试过N种方法(N》5)最后还是觉得,下载一个控件来用是最方便的。呵呵。
      

  12.   

    '在窗体上放一个按钮
    Option ExplicitPrivate Declare Function SetCapture Lib "user32" (ByVal hWnd As Long) As Long
    Private Declare Function ReleaseCapture Lib "user32" () As Long
    Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
        If X >= 0 And X <= Command1.Width And _
           Y >= 0 And Y <= Command1.Height Then
            Command1.Font.Size = 12
            Command1.Font.Bold = True
            
            SetCapture Command1.hWnd
        Else
            Command1.Font.Size = 9
            Command1.Font.Bold = False
            
            ReleaseCapture
        End If
    End SubPrivate Sub Form_Paint()
        Cls
        Print "请试着将鼠标移进移出命令按钮!"
    End Sub
      

  13.   

    楼主试试这个看Option Explicit
    Dim x As Single, y As Single
    Event mGotFocus()
    Private Sub mGotFocus() '注意这里!
       RaiseEvent Control.GotFocus
    End Sub
    Private Sub UserControl_GotFocus()
       Call UserControl_MouseMove(0, 1, x, y) '对应的效果变化函数
    End SubPrivate Sub UserControl_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
    x = x
    y = y
     Print "dkdkdkd"
    End Sub
      

  14.   

    如果是凸凹的效果,还是用API比较好!
      

  15.   

    你可以參考網絡上已經泛濫的xp風格command那最初的版本,寫得粉好的