麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

VB實用編程兩例

2019-11-18 17:28:49
字體:
來源:轉載
供稿:網友
該程序通過VB的多媒體控件MCI32.OCX可以打開MPEG壓縮文件(如VCD2.0版的.DAT文件)來實現一個VCD播放器的設計

  首先必須確保在你的Windows系統中SYSTEM.INI文件關于[MCI]中需有MPEGVideo項(一般Windows95和Windows98中均有此項)。

  次在VB中建立一個新窗口,加入多媒體部件MicrosoftMultimediaControl5.0(位于C:/Windows/System/MCI32.OCX),以及對話框部件MicrosoftCommonDialogControl5.0(位于C:/Windows/System/COMMONDLG32.OCX),將MCI控件拖放至窗體Form上,調整其大小,并將窗體的大小也調整為與其同樣大小;將其九個按鈕(從左至右為:

  DimjAsInteger

  j=MMControl1.Position 100'數值100為前進量,可適當調整

  Ifj>MMControl1.LengthThenMMControl1.From=MMControl1.Length

  ElseMMControl1.From=j

  EndIf

  MMControl1.Command="Play"

  EndSub

  MCI控件還有很多屬性,如畫面播放位置hWndDisplay屬性等等,大家可參閱相關資料自行摸索。

  調整好窗體的標題、圖標、顏色等,然后編譯成.EXE文件,你就可以在Windows下擁有自己的VCD播放器了。


  有時在一個窗口中出現較多的控制件時,如果能向導式地建議用戶下一步該做什么,不失為上策。在VisualBasic的程序設計中,我們可以使用語句:object.SetFaocus使我們希望的控件得到輸入焦點,舉個例子:在Form1中我們加入一個按鈕Command1和一個文本輸入Text1,雙擊按鈕控件,然后鍵入如下代碼:text1.SetFocus

  再按F5運行程序,您就會看到一單擊按鈕,文本框會立即取得輸入焦點。另外,我們還可以使用語句:Sendkeys"{TAB}"使下一個控件獲得焦點,但我們需要在設計時確定各控件的Index值。(在Properties窗口中)讓控件自己感知自己的工作已完成,而主動將焦點讓出,會使用戶覺得應用程序很聰明,也減少了用戶出錯的機會。

  可是當焦點切換的兩個控件相隔有一定距離時,上述的方法有時也不足以引起用戶的注意,那么一種好的解決方法是將鼠標箭頭也移到控件上。可惜,VB并不支持鼠標移動,那我們就求助API函數,API函數SetCursorPos可讓我們如愿。

  下面是子程序MoveCursorOn,它可讓鼠標移動到指定控件上方。下列代碼請放在declarations段中:

  TypePoinTAPI

  xAsInteger

  yAsInteger

  EndType

  DeclareSubSetCursorPosLib"User"(ByvalxAsInteger,ByvalyAsInteger)

  DeclareSubClientToScreenLib"User"(ByvalhwndAsInteger,ipPointaspointAPI)DeclareFunctionGetParentLib"User"(Byval hwnd As Integer)AsInteger

  然后建立一個新的子程序(ALT+N→N→鍵入子程序名MoveCursorOn),下面是子程序的代碼:

  SubMoveCursorOn(sourceAsControl)

    DimPtAsPoinTAPI

    DimhparentAsInteger

    p.x=(Source.Left+Source.Width/2)/Screen.Twipsperpixel)

    p.y=(Source.Top+Source.Height/2)/Screen.Twipsperpixel)

    hparent=GetParent(source.hwnd)

    ClientToScreenhparentpt

    SetCursorPos pt.x pt.y

    EndSub

  使用該子程序很容易,例如我們想把鼠標移動到按鈕Command1上,就可使用語句MoveCursorOnCommand1您會看到鼠標箭頭已經指著按鈕Command1。

  需要說明的是,千萬不要濫用該子程序。讓鼠標自己滿屏亂飛,我們的用戶會感到失去對應用程序的控制,這是違反我們的初衷的。在有數個輸入框的窗口中(這在數據庫應用程序中是很典型的),當用戶完成第一個輸入框的輸入后,總愛習慣性的加一個回車,希望輸入焦點落到下一個輸入框中(DOS中大多數應用程序是如此),可往往事與愿違,這一回車卻觸發了擁有Default特性的按鈕,結果不是關閉了當前窗口就是又蹦出另一窗口。用戶睜大眼睛看著屏幕,"咦?!我到底做了什么?”這是Windows新用戶經常遇到的事情。解決它其實很容易,只需在輸入框的KeyPress事件中加入如下代碼:IFKeyASCII=13Then KeyASCII=0 Sendkeys"{TAB}"ENDIF這樣,當用戶在這個輸入框中鍵入Enter時,就象鍵入TAB鍵時,焦點被移到下一控件上。但需注意,這種方法不適用于多行的TextBox,即TextBox的MultiLine特性設為True時,因為這時的回車鍵是起換行的作用。

->


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美成人黄色小视频 | 一区二区久久精品66国产精品 | 国产视频精品在线 | 高清在线观看av | 亚洲午夜久久久精品一区二区三区 | 日韩一级成人 | 亚洲精品91 | 九色国产| 国产精品久久久久久久久久东京 | 视频在线中文字幕 | 成人在线观看网 | 久久久久久久久久亚洲 | 蜜桃网站在线 | 成人三级电影网站 | 久久美女免费视频 | aa国产视频一区二区 | 狠狠操精品视频 | 小情侣嗯啊哦视频www | 久久久久九九九女人毛片 | 色播av在线 | 一本色道久久99精品综合蜜臀 | 精品国产1区2区3区 免费国产 | 狠狠久久伊人中文字幕 | 成人福利电影在线观看 | 日本a大片 | 国产精品美女久久久久久不卡 | 成人国产精品齐天大性 | 国产69精品99久久久久久宅男 | 91在线色 | 午夜色片 | 国产精品视频中文字幕 | 欧美日韩视频网站 | 国产亚洲精品久久久久婷婷瑜伽 | 亚洲特黄 | 神马久久精品综合 | 国内精品伊人久久 | 午夜精品久久久久久久99热浪潮 | 男女生羞羞视频网站在线观看 | 国产精品av久久久久久久久久 | 一级片九九 | 久久成人在线观看 |