'怎样设置可以让command命令按钮,当点击一下他就凹下去,一直保持这种状态,直到再点击一下,再弹起来,谢谢!!!

解决方案 »

  1.   

    按钮实现不了,你可以编写自定义控件实现,或者用toolbar也能实现
      

  2.   

    使用CheckBox控件,设置style属性为1即可。同样,optionbutton设置style属性为1可以实现组效果。
      

  3.   

    楼主可以使用ToolBar和CheckBox控件!
      

  4.   

    可是我就想用command命令按钮啊,应该我要做30个按键,我都做成控件数组的形式了,但是现在有一个键需要实现上面的功能,要组合用的,能不能有办法呢
      

  5.   

    用COMMAND不行,用OPTIONBOX,STYLE设为1
      

  6.   

    添加1个 option 按钮 style 设为1
    Private Sub Option1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
        Static a As Boolean
        a = Not a
        Option1.Value = a
        Print Option1.Value
    End Sub
      

  7.   

    checkbox 更简单 只要STYLE设为1就可以了
      

  8.   

    到网上去下载一个第三方控件的COMMAND,这样就行
      

  9.   

    如果我用checkbox控件,当我点击他我会发出一串命令,我用的mousedown事件,可以实现,可是等我在点击他,让它弹起来时,该用什么事件呢,用mouseup肯定不可以了,因为我点击让它按凹下去时有mouseup事件了,我想再点击弹起后捕捉这个事件,再做处理,不知道该怎么捕捉,用keyup也不行呢
      

  10.   

    判断checkbox的值不就可以了吗
      

  11.   

    pingguo9108()  还是用mousedown事件啊
      

  12.   

    根据checkbox.value的值来判断执行你要的代码就可以了
      

  13.   

    check1.value的值就是1和0吗?不是我想要得阿,点击鼠标,值就是0,鼠标一松开就是1,这和我用mousedown ,和mouseup没什么区别阿
      

  14.   

    点击一下为0,再点击一下变为1,如此反复并不是mousedown为0,mouseup为1
      

  15.   

    在click()里加一个if判断if chkbox1.value=1 then
    if chkbox1.value=0 then
      

  16.   

    '没领悟师傅的意思,本来看大家说的,可以用checkbox来做,看来不行了,要做成如果点击按钮的时间没有超过1s,则这个按钮像正常按钮一样弹起来,如果超过1s则按键就凹下去,直到再次点击按钮,才弹起来,希望大家帮帮忙了
      

  17.   

    不好意思,早上才看到,耽误你时间了。我以前做项目就是用图片,可以用抓图软件,当你鼠标点下按钮时不要松开,用快捷键抓图,截下按钮点的图片,当按钮按下时,BUTTON上显示图片就可以了,做图片是个细活,呵呵,要花点时间了。对了,如果你的BUTTON没有特殊要求的话,抓图时可以用CHECKBOX先代替BUTTON做样子
      

  18.   

    BUTTON没有特殊要求,只是做成:如果点击按钮的时间没有超过1s,则这个按钮像正常按钮一样弹起来,如果超过1s则按键就凹下去,直到再次点击按钮,才弹起来嘿我说:
    你说的---抓图时可以用CHECKBOX先代替BUTTON做样子
    这个该怎么实现呢,不是很懂,以前没做过,还请详细说明一下,谢谢
      

  19.   

    这个按钮用checkBox 并把STYLE设为1
    在这个事件里把Check1_MouseDown 时间监视打开然后在Check1_Click中去查看你那个时间是多少,
    if <1s then
      Check1.value = 0
    end if 
      

  20.   

    这个按钮用checkBox 并把STYLE设为1
    在这个事件(Check1_MouseDown )里把时间监视打开然后在Check1_Click中去查看你那个时间是多少,
    if <1s then
      Check1.value = 0
    end if 
      

  21.   

    呵呵,实际就是象前面几位说的用CHECKBOX按钮,改style 设为1这样CHECKBOX就象你要求的BUTTON一样,按下不会弹起。把CHECKBOX做成你BUTTON一模一样,使CHECKBOX成按下状态,然后抓图,把按钮那一部分截下来应该就可以了
      

  22.   

    前提这个按钮用checkBox 并把STYLE设为1Dim iTimeTmp1 As Integer
    Dim iTimeTmp2 As IntegerPrivate Sub Check1_Click()
        iTimeTmp2 = CInt(Mid(CStr(Time()), 4, 2))
        If iTimeTmp2 > iTimeTmp1 Then
            Check1.Value = 1
        End If
    End SubPrivate Sub Check1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    iTimeTmp1 = CInt(Mid(CStr(Time()), 4, 2))
    End Sub
      

  23.   

    有N多選擇
    1、checkbox
    2、image,自己找兩個按下的圖片和恢復的圖片
    3、toolbar
    4、自己做一個這樣的控件任君選擇。哈哈
      

  24.   

    我在属性里picture里直接加载图片,按钮一直显示图片,可不可以在代码里控制呢,因为刚开始我不想让它显示图片
    command1.picture=   ????这里不知道该怎么写,我写图片的路径不好用呢,如果真是图片的路径的话,这个程序如果在别人的机子上运行,岂不要改路径呢??
      

  25.   

    可以用PICTUREBOX,IMAGELIST存放
    其实在程序目录下放上图片一起发给用户一样,写时用相对路径:app.path加你放的文件夹就好了
      

  26.   

    Command2.Picture = LoadPicture("d:\up01.jpg")
            Command2.Picture = Nothing
      

  27.   

    pingguo9108() ( ) 信誉:100    Blog  2006-11-24 13:13:29  得分: 0  
     
     
       看来抓图的可以试一下哦,不过怎么没有直接用的呢,我以为这个应该用的满普遍的阿
      
     
    -------------------------------------------------------------------------------
    肯定是个相对路径了
      

  28.   

    Command2.Picture = LoadPicture("d:\up01.jpg")
            Command2.Picture = Nothing
    用这种方法已经做好了,非常感谢楼上的各位,可惜我分不多了,要不每个人都会有份的
    ***可以用PICTUREBOX,IMAGELIST存放
    其实在程序目录下放上图片一起发给用户一样,写时用相对路径:app.path加你放的文件夹就好了****
    意思是我不用PICTUREBOX,IMAGELIST,而是把图片放在我程序的目录下,用相对路径就可以了吗? 假如我的程序放在d:\mmm文件夹下,up01.jpg也放在mmm文件夹里,是像下面这样写吗?
    Command2.Picture = LoadPicture("app.path\mmm\up01.jpg")
      

  29.   

    Command2.Picture = LoadPicture(app.path & "\up01.jpg")
      

  30.   

    如果在MM下再建立文件夹PIC应该是:
    Command2.Picture = LoadPicture(app.path & "\pic\up01.jpg")