• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    VB中鼠標沖突問題

    發布: 2007-7-14 20:28 | 作者: 佚名    | 來源: 網絡轉載     | 查看: 10次 | 進入軟件測試論壇討論

    領測軟件測試網 作者:解春燕

      VB中幾乎所有的控件都有DragMode屬性,該屬性確定該控件能否用鼠標拖動。DragMode屬性的設置包括如下:

      0-Manual 拖動操作必須在程序中啟動

      1-Automatic 用戶可以用鼠標拖動控件

      當將該控件的DragMode屬性被設為Automatic時,他就不再響應通常的鼠標事件,只能進行拖動。如果控件是個標題框,則不必擔心編輯問題,將DragMode設置為Automatic不會有什么大問題,但如果需要標題欄的Click事件,則不能將DragMode的屬性值設為Automatic。更糟的是,如果窗體上加入一個文本框控件,將其屬性設置為Automatic,然后運行,這時雖然能通過鍵盤向控件中輸入文本并移動此控件,但鼠標的編輯操作的功能就消失了。

      為解決此沖突,可以用手動實現拖動特性,調用控件的Drag方法。

      調用控件的Drag方法等于將控件的DragMode屬性設置為0-Manual,但控件也可以被拖動。

      什么時候可以調用控件的Drag方法呢?首先,要確定應用程序如何區分普通鼠標編輯操作和拖動操作?煽康姆椒ㄊ牵河肅trl或Alt鍵與鼠標組合操作來拖動控件,所有鼠標功能和平常一樣用,但如果按住Ctrl鍵再按鼠標鍵,則程序啟動拖動操作,調用控件的Drag方法。

      下面我們通過一個例子來更加清楚的理解和使用Drag方法:

      兩個文本框的DragMode屬性分別設為Automatic和Manual。如圖:
            

      標題框控件的DragDrop事件代碼為:

    Private Sub Label1_DragDrop(Source As Control, X As Single, Y As Single)

      Label1.Caption = Source.Name & " was dropped "

    End Sub
      這個子程序顯示放置到標題框上的控件名消息。

      因為第二個文本框的DragMode設置為Manual,所以第二個文本框可以像平常一樣編輯,但不能進行拖動操作。在第二個文本框的

      MouseDown事件加入代碼為:

    Private Sub Text2_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

      If Shift = 2 Then

        Text2.Drag

      End If

    End Sub

      第一個文本控件可以自動放置,即只可以用鍵盤編輯第一個文本框的內容。要選擇這個控件上的文本,需要按住shift+箭頭鍵。如果在第一個文本框上拖動鼠標,則會移動文本框,將它放置到標題框控件上,標題框中的標題變成所放置的控件名。要拖動第二個文本框,則按住ctrl,在單擊該控件,然后開始拖動,控件的Drag方法在按住ctrl鍵時,從MouseDown事件中調用。

      大家可以試試,一試就會明白。拖動控件到窗體的某個地方后,控件的DragDrop屬性復位,控件的DragDrop屬性并不改變,只是像DragMode屬性暫時設置為1-Automatic一樣地工作。運行結果分別為:
            

      采用Drag方法能更好地控制操作。例如,如果源文件是空的,則不能啟動拖動操作。其實,Drag方法還可以用于需要相應鼠標事件的不可編輯控件,如標題框或命令鈕。

      總之,Drag方法是vb功能實現的一種常用方法,大家如果掌握了這種方法,對VB的學習會有很大的幫助。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>