Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

窗体按钮的禁用与可用

Fromaer  发表于:2009-06-03 11:38:06  
复制

我在窗体上放了一个按钮,我希望加载窗体时该按钮不可用,双击该按钮后变为可用,点击后又变为不可用。现在的问题是在在窗体加载事件中我把按钮的enabled=False后,再双击该按钮就没有了反应。可以通过把双击事件定义在别的控件上来解决这个问题,但这样太不专业了。

 

请教各位有没有好的什么方法呢?谢谢了。

 

Top
豆豆 发表于:2009-06-03 13:35:02

加载窗体时该按钮不可用,此后双击该按钮不可能使该按钮可用。

只能通过别的控件来激活该按钮。

你说的[太不专业],不明白?



沈军 发表于:2009-06-03 19:50:57

当一个按钮无效的时候,是无法通过自身来让自己生效的,并不是什么专业的问题。

如果你是在一个记录窗体中的时候,你可以通过 一个记录的ID字段为空或者非空来自动控制 按钮是否有效或是无效。

 

在窗体[成为当前]的事件中加入代码就行:

 

Private Sub Form_Current()
    If IsNull(ID) Then
    Me.Command64.Enabled = False
    Else
    Me.Command64.Enabled = True
    End If
End Sub

如果要让窗体更新后使这个控件生效还需要加一段代码:

 

Private Sub Form_AfterUpdate()

    Form_Current

End Sub

这样才能够保证被控制的按钮自动控制了。



Bio_hebei 发表于:2009-06-03 20:45:45

又想让他用,又想让他不用,到底是不用还是用,这个想法有点矛盾



铜风铃铃 发表于:2009-06-03 22:36:36

明白你的想法,能不能换一种思路,通过字体颜色决定可用与不可用:

 

比如:  窗体加载时  me.command1.forecolor = 152

       双击后   首先判断command1的前景色,即:   if me.command1.forecolor=152 then

                                                       msgbox "可执行 "

                                                       .........

                                                       .......  

                                                       me.command1.forecolor=0

                                                else

                                                      msgbox "不可执行 "

                                                      me.command1.forecolor=152

                                                end if         



总记录:4篇  页次:1/1 9 1 :