level 1
点击按钮Command1.Enabled = False鼠标指针移出按钮外Command1.Enabled = True如何编写?
2005年08月28日 03点08分
1
level 0
楼上的不对应该是Private Sub Command1_Click()Command1.Enabled = FalseEnd SubPrivate Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)If X >= Command1.Left And X <= Command1.Left + Command1.Width And Y >= Command1.Top And Y <= Command1.Top + Command1.Height ThenElseCommand1.Enabled = TrueEnd IfEnd Sub
2005年08月28日 04点08分
3
level 1
If X >= Command1.Left And X <= Command1.Left + Command1.Width And Y >= Command1.Top And Y <= Command1.Top + Command1.Height ThenElseCommand1.Enabled = TrueEnd If可以改成If NOT(X >= Command1.Left And X <= Command1.Left + Command1.Width And Y >= Command1.Top And Y <= Command1.Top + Command1.Height) ThenCommand1.Enabled = TrueEnd If
2005年08月28日 06点08分
5
level 1
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)Caption = "X:" & X & " Y:" & Y '这句可以不要If X < Command1.Left Or X > Command1.Left + Command1.Width Or Y < Command1.Top Or Y > Command1.Top + Command1.Height Then Command1.Enabled = TrueEnd Sub
2005年08月28日 06点08分
6
level 1
改成这样更少一点代码:If X < Command1.Left Or X > Command1.Left + Command1.Width Or Y < Command1.Top Or Y > Command1.Top + Command1.Height Then Command1.Enabled = True
2005年08月28日 06点08分
7
level 6
其实都不用!大家来看哈利波特:http://phycn.com/herryeng.txt 因为,只要移出,就能碰到form的话。Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Command1.Enabled= TrueEnd Sub Private Sub Command1_Click()Command1.Enabled = 1 + 2 + 3 + 4 - 10End Sub 但是,如果command不在form表层上,应该Private Declare Function SetCapture Lib "user32" (ByVal hWnd As Long) As LongPrivate Declare Function ReleaseCapture Lib "user32" () As Long '-----------------Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)If X < Command1.Left Or X > Command1.Left + Command1.Width Or Y < Command1.Top Or Y > Command1.Top + Command1.Height Then Command1.Enabled= True ReleaseCaptureend ifEnd Sub Private Sub Command1_Click()Command1.Enabled = 1 + 2 + 3 + 4 - 10SetCapture me.hWndEnd Sub '''''''''''''''''所以说,各种情况解决办法不同,其中第二种最好,因为只要command是窗体上的空间就有用,因为如果command藏在picture里的话,鼠标出来也不见得到form上form更本不会mouse事件,只有这时SetCapture me.hWnd,form1才能控制鼠标'你们想得太简单了吧'这些代码我信手写的,打错字恕不负责
2005年08月31日 04点08分
9
level 2
不过1+2
+3
+4-10的方法很搞笑哦:)但是代码不是很高效`~
2005年08月31日 04点08分
13
level 1
Command1.Enabled = 1 + 2 + 3 + 4 - 10哈,这还不是 Command1.Enabled=0 等值 Command1.Enabled=Flash其实也不用讨论这个问题。要解决问题的办法也不是一个。只要解决就可以了。三楼的代码就足够。
2005年08月31日 06点08分
16
level 1
false 楼上打错 Command1.Enabled=False
2005年08月31日 06点08分
17