自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一點(diǎn)通概括VB.NET基礎(chǔ)知識(shí)

開發(fā) 后端
這里就關(guān)于自定義類型、如何聲明、什么是句柄、設(shè)備上下文、顯式聲明與自動(dòng)保存VB.NET基礎(chǔ)知識(shí)介紹,希望對(duì)大家有幫助。

學(xué)習(xí)VB.NET時(shí),經(jīng)常遇到的問題就是VB.NET直接的功能我們可以熟練的運(yùn)用,可是間接的我們就不知道該怎么辦了。其實(shí)Windows操作系統(tǒng)本身就給我們準(zhǔn)備了許多東西,VB沒有的,或許Windows有。我們當(dāng)然希望少花力氣,多得效果。這里要講的內(nèi)容就是 ——學(xué)會(huì)利用Windows給我們的東西:API。

#T#然而,學(xué)會(huì)一種東西是需要付出相當(dāng)?shù)呐Φ?,API也一樣,它可以給我們帶來很大的方便,但想要掌握它,就不是使用幾個(gè)控件那么輕松的事了。所以在看這篇文章時(shí),希望讀者可以抱一個(gè)正確的態(tài)度,就是學(xué)習(xí)編程不是為好玩,而是為使用; 不要以自己對(duì)這方面是否有興趣而看,而要為API是否能為你的程序帶來效果而看。我并不是說一切都是那么嚴(yán)肅和困難,只是API對(duì)VB來說,已經(jīng)可以算高級(jí)方面的應(yīng)用了,所以“認(rèn)真”和“仔細(xì)”是需要的。好了,放松一點(diǎn),讓我們從現(xiàn)在起一步步領(lǐng)略API的好處吧。首先我們先來回憶一下關(guān)于VB基礎(chǔ)知識(shí)。

1.自定義類型

VB中可以使用Type關(guān)鍵字將已有的數(shù)據(jù)類型進(jìn)行組合,成為一個(gè)新的類型,該類型就稱為用戶自定義類型。如:

  1. Type NewType  
  2. sName As String  
  3. lNumber As Long  
  4. End Type 

定義了一個(gè)名為NewType的自定義類型。以后可以用Dim MyType As NewType來定義一個(gè)NewType類型的變量。

sName As String類型的變量有兩種,一種是變長(zhǎng),即運(yùn)行時(shí)的字符串長(zhǎng)度是可變的,另一種是定長(zhǎng),運(yùn)行時(shí)字符串的長(zhǎng)度是固定的。平常我們定義一個(gè)字符串變量: Dim strA As String 即定義了一個(gè)變長(zhǎng)的字符串,但在使用API時(shí)經(jīng)常要用到定長(zhǎng)的字符串,應(yīng)該這樣定義: Dim strB As String * 30,即定義了一個(gè)可容納30個(gè)字節(jié)字符的變量。

2.VB.NET基礎(chǔ)知識(shí)如何聲明

VB中使用API之前,需要先對(duì)API進(jìn)行聲明,聲明的方法是使用Declare關(guān)鍵字,如:
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
聲明了一個(gè)名為SendMessage的API函數(shù)。許多API的聲明可以在API瀏覽器中找到,而且本文在講述一個(gè)API時(shí)也會(huì)給出聲明,更深入的知識(shí)將在以后講述。

3.VB.NET基礎(chǔ)知識(shí)什么是句柄

API中使用得最多的一個(gè)詞大概就是“句柄”了。如果要說得復(fù)雜些,句柄的確可以說上一大堆,不過作為VB的應(yīng)用,我們可以更簡(jiǎn)單地去理解它??梢赃@么說,句柄是Windows系統(tǒng)賦予內(nèi)存中每一個(gè)對(duì)象,包括窗口、按鈕(其實(shí)也是一種窗口)或者文件、圖標(biāo)、菜單等等所有東西的標(biāo)識(shí)。所謂標(biāo)識(shí)就如身份證一樣,是不會(huì)重復(fù)并且和實(shí)際對(duì)象是一一對(duì)應(yīng)的。它的作用是讓W(xué)indows知道將被操作的對(duì)象是誰。許多VB控件都提供了一個(gè)長(zhǎng)型的hWnd屬性,一般情況下,這個(gè)屬性就是這個(gè)控件的句柄,用API控制這個(gè)控件時(shí)就需要用到這個(gè)屬性了。

4.設(shè)備上下文

其實(shí)我覺得“設(shè)備上下文”這個(gè)詞讀起來很奇怪,不過就其字面來看,Device Context(DC,可不是直流電或DreamCast哦)就是這個(gè)意思,許多人也這么稱它。不過我想翻譯為“設(shè)備中介”大家應(yīng)該更容易理解吧。它的作用是作為計(jì)算機(jī)設(shè)備和程序之間的中介,比如顯示器和程序之間,或者打印機(jī)和程序之間。在對(duì)這些設(shè)備操作的時(shí)候,是需要通過這個(gè)中介操作的(與句柄相似),一些控件,如 Picture,想在上面畫圖時(shí),就要用到hDC屬性了。


5.顯式聲明與自動(dòng)保存

在默認(rèn)情況下,Visual Basic會(huì)把未聲明的變量認(rèn)為是新變量(即使是你不小心打錯(cuò)字了),這樣很容易出現(xiàn)錯(cuò)誤,而且要找出這樣的錯(cuò)誤往往很不容易。加上API的操作基本上都會(huì)涉及到系統(tǒng)本身,一旦出錯(cuò)就有可能出現(xiàn)Visual Basic崩潰甚至系統(tǒng)崩潰。所以到Visual Basic的選項(xiàng)設(shè)置中選上Require Variable Declaration(需要變量聲明)。在 Enviroment(環(huán)境)頁(yè)中的When a program starts(當(dāng)程序啟動(dòng)時(shí))處選上Prompt To Save Changes(提示保存)或 Save Changes(自動(dòng)保存)。這樣Visual Basic會(huì)檢查變量是否已經(jīng)聲明,不再允許沒有聲明的變量出現(xiàn)了。

責(zé)任編輯:田樹 來源: 博客
相關(guān)推薦

2009-11-03 09:09:19

VB.NET類

2009-11-02 16:30:29

VB.NET構(gòu)造器

2009-10-28 14:30:16

VB.NET RmDi

2009-10-26 10:12:14

VB.NET操作MsA

2009-11-02 11:22:59

VB.NET文本文件操

2009-10-20 09:42:16

VB.NET編程

2009-10-26 15:57:07

VB.NET使用Ora

2009-10-13 14:50:59

VB.NET Envi

2009-10-14 14:04:29

VB.NET創(chuàng)建Web

2009-10-14 10:19:57

VB.NET Doma

2009-10-15 17:50:48

VB.NET Spli

2009-10-14 13:15:09

VB.NET數(shù)據(jù)綁定

2009-11-03 10:00:20

VB.NET New方

2009-10-14 15:34:29

VB.NET窗體編程模

2009-10-28 10:51:32

VB.NET默認(rèn)屬性

2009-10-14 16:46:25

VB.NET OnSt

2009-10-21 10:05:30

VB.NET運(yùn)行環(huán)境

2009-10-23 14:06:07

VB.NET類對(duì)象

2009-10-27 11:32:42

VB.NET Disp

2009-11-03 10:51:33

VB.NET共享
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)