3 回答

TA貢獻1844條經驗 獲得超8個贊
是常量的意思,而VB中的常量還有以下幾種:
1)直接常量
指在程序中直接給出值的數據,如:123、123&、123.45、1.234E2 、123D3分別表示整型、長整型、單精度浮點型(小數形式)、單精度浮點型(指數形式)、雙精度浮點型。
八進制常數: 在數值前加&O ,如 &O123
十六進制常數:在數值前加&H ,如&H123
2)用戶聲明的符號常量
用Const來聲明: Const 符號常量名 [As 類型] = 表達式
如:Const PI=3.14159 '聲明了常量PI,代表3.14159,單精度型
Const MAX As Integer=&O144 ''聲明了常量MAX,代表八進制數144,整型
Const COUNT#=45.67 '聲明了常量COUNT,代表45.67,雙精度型
3)系統提供的常量
系統定義的常量位于對象庫中,在對象瀏覽器中的Visual Basic(VB)和Visual Basic for Aplication(VBA)等對象庫中列出了VB的常量。這些常量可以與應用程序的對象、方法、屬性一起使用。
如:Form1.WindowsState=vbMaximized 表示將窗口極大化。

TA貢獻1817條經驗 獲得超6個贊
Const SPIF_UPDATEINIFILE = &H1
與
const pi =3.14159
是一樣的。
SPIF_UPDATEINIFILE是api中的常量,但她并不是VB的常量。所以在vb中還要定義。(api函數不是vb的一部分)

TA貢獻1827條經驗 獲得超8個贊
怎么不一樣,都是定義常量的方法;
API函數中傳參中有的是一些固定的值,而定義為SPIF_UPDATEINIFILE 是為了更加的清晰和規范!
調用API過程和常量的定義
函數:Declare Function SystemParametersInfo Lib "user32"
Alias "SystemParametersInfoA" (ByVal uAction As Long,
ByVal uParam As Long, ByVal lpvParam As Any, ByVal
fuWinIni As Long) As Long
fuWinIni 的值:
SPIF_UPDATEINIFILE(值為1)
Or SPIF_SENDWININICHANGE(值為2)
SPIF_UPDATEINIFILE 和 SPIF_SENDWININICHANGE 這兩個值在VB中還是需要定義的!API中變量和VB中式不沖突的!
Const SPIF_UPDATEINIFILE =&H1
Const SPIF_SENDWININICHANGE=&H2
調用:SystemParametersInfo SPI_SETSCREENSAVEACTIVE,True,
0&, SPIF_UPDATEINIFILE Or SPIF_SENDWININICHANGE)
- 3 回答
- 0 關注
- 567 瀏覽
添加回答
舉報