返回列表 上一主題 發帖

[發問] 如何讓滑鼠移入的判斷只判斷一次~當有改變時~再改變!?

當滑鼠指到CheckBox1的時候跳出一張圖~該如何下判斷式?

當滑鼠指到CheckBox1的時候跳出圖1
當滑鼠移開CheckBox1的時候關閉圖1

當滑鼠指到CheckBox2的時候跳出圖2
當滑鼠移開CheckBox2的時候關閉圖2

以此類推~

TOP

回復 1# av8d
個人曾經用過如此作法

Private Sub CheckBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
         Image1.Picture = LoadPicture("")   
         Image1.Picture = LoadPicture(ThisWorkbook.Path & "\圖庫\規格1.JPG")
Private Sub CheckBox2_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
        Image1.Picture = LoadPicture("")   
         Image1.Picture = LoadPicture(ThisWorkbook.Path & "\圖庫\規格2.JPG")
僅能在CheckBox1    CheckBox2  上作文章
功力僅到此 至於游標到其他空白處做 Image1.Picture = LoadPicture("")   卸載圖片   我就不會了

TOP

回復  av8d
個人曾經用過如此作法

Private Sub CheckBox1_MouseMove(ByVal Button As Integer, ByVal ...
yangjie 發表於 2012-9-6 02:08

須先在userform1中作一個 image的物件

TOP

本帖最後由 Hsieh 於 2012-9-7 11:26 編輯

回復 1# av8d

試試
play.gif
滑鼠.zip (49.37 KB)
學海無涯_不恥下問

TOP

回復 4# Hsieh


    太強了~

有點深奧~我看不太懂~努力學習中!

如何在Image2內放2張圖?

TOP

回復 5# av8d

這個的重點在於如何讓滑鼠有類似滑出的事件
因為表單及表單物件只有MOUSEMOVE事件
而表單與物件的MOUSEMOVE事件不會同時存在
就可依此做為是否觸及物件的參考
至於你只看到Image2
那是2個Image物件重疊而已
之所以要直接佈置多個Image物件,這樣可避免圖檔必須帶著走的問題
如果你不介意把圖檔必需跟著檔案,就可參考2#的作法
使用單一個Image物件,然後用LoadPicture來變更圖片
總之,方法不只一個,自己動動腦會有更多收穫
學海無涯_不恥下問

TOP

回復 6# Hsieh
漂亮
H大大的"而表單與物件的MOUSEMOVE事件不會同時存在
                  就可依此做為是否觸及物件的參考
"
讓我想到如此作法
         Private Sub Userform1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
                  Image1.Picture = LoadPicture("")   
        end sub
        Private Sub CheckBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
                  Image1.Picture = LoadPicture("")   
                  Image1.Picture = LoadPicture(ThisWorkbook.Path & "\圖庫\規格1.JPG")
         end sub
         Private Sub CheckBox2_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
                 Image1.Picture = LoadPicture("")   
                 Image1.Picture = LoadPicture(ThisWorkbook.Path & "\圖庫\規格2.JPG")
        end sub
  即可一離開CheckBox1的範圍 即刻 卸載圖形

TOP

回復 7# yangjie


    大大~謝謝你~

可是我測試了一下
         Private Sub Userform1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
                  Image1.Picture = LoadPicture("")   
        end sub
好像沒有效果~我確定是在Userform1底下運行~

TOP

回復 8# av8d

滑鼠.rar (33.53 KB)
學海無涯_不恥下問

TOP

[發問] 如何讓滑鼠移入的判斷只判斷一次~當有改變時~再改變!?

Private Sub Userform1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Image1.Picture = LoadPicture("")   


Private Sub CheckBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Image1.Picture = LoadPicture("")   
Image1.Picture = LoadPicture(ThisWorkbook.Path & "\圖庫\規格1.JPG")


由於每當滑鼠移動到的每一次~Image1會一直閃爍~是否有辦法讓他只判斷一次?當有改變時~再次判斷~再次改變!
1

評分人數

    • GBKEE: 你有許的主題是可以在原的主題繼續發問,是 ...金錢 -2

        靜思自在 : 犯錯出懺悔心,才能清淨無煩惱。
返回列表 上一主題