自己嘗試翻譯了B4A5.8的函數手冊,主要是為了熟悉核心功能
核心
Bit
Bit是一個包含了與位運算有關函數的預定義對象(預定義指你不需要去定義)
例如:
Dim flags As Int flags = Bit.Or(100, 200)
事件:
無
成員:
And (N1 As Int, N2 As Int) As Int Not (N As Int) As Int Or (N1 As Int, N2 As Int) As Int ParseInt (Value As String, Radix As Int) As Int ShiftLeft (N As Int, Shift As Int) As Int ShiftRight (N As Int, Shift As Int) As Int ToBinaryString (N As Int) As String ToHexString (N As Int) As String ToOctalString (N As Int) As String UnsignedShiftRight (N As Int, Shift As Int) As Int Xor (N1 As Int, N2 As Int) As Int
成員詳解
And (N1 As Int, N2 As Int) As Int
返回兩個數的按位與運算結果
Not (N As Int) As Int
返回按位取反的結果
Or (N1 As Int, N2 As Int) As Int
返回兩個數的按位或運算結果
ParseInt (Value As String, Radix As Int) As Int
按指定的進制返回對應的整數值,Radix介於2和36之間
ShiftLeft (N As Int, Shift As Int) As Int
按位左移Shift位
ShiftRight (N As Int, Shift As Int) As Int
按位右移Shift位(符號保持不變)
ToBinaryString (N As Int) As String
返回2進制字符串
ToHexString (N As Int) As String
返回16進制字符串
ToOctalString (N As Int) As String
返回8進制字符串
UnsignedShiftRight (N As Int, Shift As Int) As Int
按位右移Shift位(0補充右邊的位)
Xor (N1 As Int, N2 As Int) As Int
返回按位異或的結果
DateTime
日期時間函數
DateTime也是一個預定義對象,他存儲了從1970年1月1日到現在的毫秒數(Ticks)
函數DateTime.Date和函數DateTime.Time將毫秒數轉換成字符串,你可以通過DateTime.Now獲取當前的時間
例如
Dim now As Long
now = DateTime.Now
Msgbox("The date is: " & DateTime.Date(now) & CRLF & _
"The time is: " & DateTime.Time(now), "")
事件:
無
成員:
Add (Ticks As Long, Years As Int, Months As Int, Days As Int) As Long
Date (Ticks As Long) As String
DateFormat As String
DateParse (Date As String) As Long
GetDayOfMonth (Ticks As Long) As Int
GetDayOfWeek (Ticks As Long) As Int
GetDayOfYear (Ticks As Long) As Int
GetHour (Ticks As Long) As Int
GetMinute (Ticks As Long) As Int
GetMonth (Ticks As Long) As Int
GetSecond (Ticks As Long) As Int
GetYear (Ticks As Long) As Int
Now As Long [read only]
TicksPerDay As Long
TicksPerHour As Long
TicksPerMinute As Long
TicksPerSecond As Long
Time (Ticks As Long) As String
TimeFormat As String
TimeParse (Time As String) As Long
成員詳解
Add (Ticks As Long, Years As Int, Months As Int, Days As Int) As Long
返回一個增加了指定年月日數值的新Ticks,如果想減少,參數送負數就可以了
例如
Dim Tomorrow As Long
Tomorrow = DateTime.Add(DateTime.Now, 0, 0, 1)
Log("Tomorrow date is: " & DateTime.Date(Tomorrow))
Date (Ticks As Long) As String
返回一個日期格式的字符串(按毫秒數Ticks存儲)日期格式可以用DateFormat設置
例如
Log("Today is: " & DateTime.Date(DateTime.Now))
DateFormat As String
獲取或設置日期的解析格式,支持模式參見formats。默認的格式為MM/dd/yyyy (例如04/23/2002).
DateParse (Date As String) As Long
將一個給定的日期字符串轉換成一個Ticks,如果解析失敗將會拋出一個異常
例如
Dim SomeTime As Long
SomeTime = DateTime.DateParse("02/23/2007")
GetDayOfMonth (Ticks As Long) As Int
返回Ticks中的月中的具體日數,1-31
GetDayOfWeek (Ticks As Long) As Int
返回Ticks中的具體星期數,1-7
GetDayOfYear (Ticks As Long) As Int
返回Ticks中的年中的具體日數,1-366
GetHour (Ticks As Long) As Int
返回Ticks中具體時數 ,0-23
GetMinute (Ticks As Long) As Int
返回Ticks中的具體分鍾數,0-59
GetMonth (Ticks As Long) As Int
返回Ticks中的具體月份,1-12
GetSecond (Ticks As Long) As Int
返回Ticks中的具體秒數 ,0-59
GetYear (Ticks As Long) As Int
返回年份
Now As Long [只讀]
返回代表當前時間的Ticks
TicksPerDay As Long
TicksPerHour As Long
TicksPerMinute As Long
TicksPerSecond As Long
Time (Ticks As Long) As String
返回代表當前時間的字符串,可以通過TimeFormat來指定格式
例如
Log("The time now is: " & DateTime.Date(DateTime.Now))
TimeFormat As String
按指定的格式獲取或設置時間字符串
具體支持的格式可以查看formats
默認的格式是HH:mm:ss (例如23:45:12).
TimeParse (Time As String) As Long
根據給定的時間字符串,轉換成相應的ticks值
Exception
用於拋出異常
你可以通過調用LastException來獲取最后一個異常
例如
Try
Dim in As InputStream
in = File.OpenInput(File.DirInternal, "SomeMissingFile.txt")
'...
Catch
Log(LastException.Message)
End Try
If in.IsInitialized Then in.Close
事件:
無
成員:
IsInitialized As Boolean
Message As String [只讀]
成員詳解:
IsInitialized As Boolean
Message As String [只讀]
Keywords
這里是一些內置的關鍵字
事件:
無
成員:
Abs (Number As Double) As Double
ACos (Value As Double) As DoubleACosD (Value As Double) As Double
Array
Asc (Char As Char) As Int
ASin (Value As Double) As Double
ASinD (Value As Double) As Double
ATan (Value As Double) As Double
ATanD (Value As Double) As Double
BytesToString (Data() As Byte, StartOffset As Int, Length As Int, CharSet As String)
As String
Catch
cE As Double
CharsToString (Chars() As Char, StartOffset As Int, Length As Int) As String
Chr (UnicodeValue As Int) As Char
Continue
Cos (Radians As Double) As Double
CosD (Degrees As Double) As Double
cPI As Double
CRLF As String
Density As Float
Dim
DipToCurrent (Length As Int) As Int
DoEvents
Exit
ExitApplication
False As Boolean
File As File
Floor (Number As Double) As Double
For
GetDeviceLayoutValues As LayoutValues
GetType (object As Object) As String
If
InputList (Items As List, Title As String, CheckedItem As Int) As Int
InputMultiList (Items As List, Title As String) As List
Is
IsBackgroundTaskRunning (ContainerObject As Object, TaskId As Int) As
Boolean
IsNumber (Text As String) As Boolean
LastException As Exception
LoadBitmap (Dir As String, FileName As String) As Bitmap
LoadBitmapSample (Dir As String, FileName As String, MaxWidth As Int,MaxHeight As Int) As Bitmap
Log (Message As String)
Logarithm (Number As Double, Base As Double) As Double
Max (Number1 As Double, Number2 As Double) As Double
Min (Number1 As Double, Number2 As Double) As Double
Msgbox (Message As String, Title As String)
Msgbox2 (Message As String, Title As String, Positive As String, Cancel As String,Negative As String, Icon As android.graphics.Bitmap) As Int
Not (Value As Boolean) As Boolean
Null As Object
NumberFormat (Number As Double, MinimumIntegers As Int, MaximumFractions As Int) As String
NumberFormat2 (Number As Double, MinimumIntegers As Int, MaximumFractions As Int, MinimumFractions As Int, GroupingUsed As Boolean) As String
PerXToCurrent (Percentage As Int) As Int
PerYToCurrent (Percentage As Int) As Int
Power (Base As Double, Exponent As Double) As Double
ProgressDialogHide
ProgressDialogShow (Text As String)
ProgressDialogShow2 (Text As String, Cancelable As Boolean)
QUOTE As String
Regex As Regex
Return
Rnd (Min As Int, Max As Int) As Int
Round (Number As Double) As Long
Round2 (Number As Double, DecimalPlaces As Int) As Double
Sender As Object
Sin (Radians As Double) As Double
SinD (Degrees As Double) As Double
Sqrt (Value As Double) As Double
StartActivity (Activity As Object)
Sub
TAB As String
Tan (Radians As Double) As Double
TanD (Degrees As Double) As Double
ToastMessageShow (Message As String, LongDuration As Boolean)
True As Boolean
Try
Type
Until
While
成員詳解:
Abs (Number As Double) As Double
返回絕對值.
ACos (Value As Double) As Double
根據弧度返回角度.
ACosD (Value As Double) As Double
根據角度返回弧度.
Array
根據指定的類型,創建一個一維數組.
語法:
Array As type (值列表).
例如:
Dim Days() As String
Days = Array As String("Sunday", "Monday", ...)
Asc (Char As Char) As Int
返回字符或字符串首字符的unicode碼
ASin (Value As Double) As Double
根據弧度返回角度.
ASinD (Value As Double) As Double
根據角度返回弧度.
ATan (Value As Double) As Double
根據弧度返回角度.
ATanD (Value As Double) As Double
根據角度返回弧度.
BytesToString (Data() As Byte, StartOffset As Int, Length As Int, CharSet As String) As String
將給定的字節數組轉換成字符串
Data - 字節數組.
StartOffset - 需要轉換的第一個字節.
Length - 轉換的字節個數.
CharSet - 編碼格式如ASCII,UTF8,GB2312.
例如:
Dim s As String
s = BytesToString(Buffer, 0, Buffer.Length, "UTF-8")
Catch
異常的拋出需要在一個try模塊中,並由catch模塊來捕獲,調用LastException來獲取捕獲到的異常
語法:
Try
...
Catch
...
End Try
cE As Double
e (自然對數的底數) 常量.
CharsToString (Chars() As Char, StartOffset As Int, Length As Int) As String
將給定的字符數組轉換成字符串
Chr (UnicodeValue As Int) As Char
根據給定的Unicode值獲取對應的字符
Continue
停止執行當前的循環,轉而執行下一個
Cos (Radians As Double) As Double
CosD (Degrees As Double) As Double
cPI As Double
PI 常量.
CRLF As String
換行,等同Chr(13).
Density As Float
返回設備的scale,由DPI/160確定
(DPI指每英寸的點數).
Dim
定義一個變量.
語法:
定義一個單獨的變量:
Dim variable name [As type]
默認定義的是字符串.
定義多個變量. 所以的變量類型需一致.
Dim variable1, variable2, ..., [As type]
定義數組:
Dim variable(Rank1, Rank2, ...) [As type]
例如:
Dim Days(7) As String
定義0長度的數組時,括號內的值可以省略
DipToCurrent (Length As Int) As Int
Scales the value, which represents a specific length on a default density device (Density =
1.0),
to the current device.
For example, the following code will set the width value of this button to be the same
physical size
on all devices.
Button1.Width = DipToCurrent(100)
Note that a shorthand syntax for this method is available. Any number followed by the
string 'dip'
will be converted in the same manner (no spaces are allowed between the number and
'dip').
So the previous code is equivalent to:
Button1.Width = 100dip 'dip -> density independent pixel
DoEvents
DoEvents 可以在一個大的循環中允許程序響應事件
Exit
退出最內側的循環
ExitApplication
立即結束程序退出進程
大部分的程序不應該使用ExitApplication來退出,而是調用Activity.Finish,由系統來判斷什么時候結束進程。
False As Boolean
File As File
Files related methods.
Floor (Number As Double) As Double
返回比指定的數字小或相等的最大整數
For
語法:
For variable = value1 To value2 [Step interval]
...
Next
例如:
For i = 1 To 10
Log(i) '打印1-10 (包括10).
Next
GetDeviceLayoutValues As LayoutValues
返回設備的LayoutValues.
例如:
Log(GetDeviceLayoutValues)
GetType (object As Object) As String
返回變量的類型.
If
單行條件判斷語句:
If condition Then true-statement [Else false-statement]
多行條件判斷語句:
If condition Then
statement
Else If condition Then
statement
...
Else
statement
End If
InputList (Items As List, Title As String, CheckedItem As Int) As Int
顯示一個輸入選擇列表框,選擇一個列表將關閉此窗口
返回選擇列表的索引號,如果用戶點擊了返回鍵將返回DialogResponse.Cancel
List - 顯示的列表.
Title - 窗口標題.
CheckedItem - 默認的選擇框,如果不想默認選擇,可以設置為-1
InputMultiList (Items As List, Title As String) As List
顯示一個可以多選的列表框,用戶點擊“OK”關閉
返回選中的List列表,如果用戶點擊了返回鍵,將返回一個空的List
Is
檢查對象是否是指定的類型
例如:
For i = 0 To Activity.NumberOfItems - 1
If Activity.GetItem(i) Is Button Then
Dim b As Button
b = Activity.GetItem(i)
b.Color = Colors.Blue
End If
Next
IsBackgroundTaskRunning (ContainerObject As Object, TaskId As Int) As Boolean
檢測一個容器中指定的id的sub是否在后頭運行
IsNumber (Text As String) As Boolean
檢測指定的字符串能否安全的轉換為數字
LastException As Exception
獲取最后捕捉的異常
LoadBitmap (Dir As String, FileName As String) As Bitmap
載入一個Bitmap
注意安卓的文件系統是區分大小寫的
如果Bitmap圖片太大,可能需要使用LoadBitmapSample
圖片通常壓縮存儲,與實際文件大小無關
例如:
Activity.SetBackgroundImage(LoadBitmap(File.DirAssets, "SomeFile.jpg"))
LoadBitmapSample (Dir As String, FileName As String, MaxWidth As Int, MaxHeight As Int) As
Bitmap
載入bitmap.
如果bitmap的實際高度或寬度大於最大尺寸,將進行采樣
這樣在載入大圖片時將會節省大量的內存
例如:
Activity.SetBackgroundImage(LoadBitmapSample(File.DirAssets, "SomeFile.jpg",
Activity.Width, Activity.Height))
Log (Message As String)
打印一條日志信息.
Message: 日志的信息.
Logarithm (Number As Double, Base As Double) As Double
Max (Number1 As Double, Number2 As Double) As Double
Returns the larger number between the two numbers.
Min (Number1 As Double, Number2 As Double) As Double
Returns the smaller number between the two numbers.
Msgbox (Message As String, Title As String)
顯示一個message對話框
對話框將只顯示一個ok按鈕
Example:
Msgbox("Hello world", "This is the title")
Msgbox2 (Message As String, Title As String, Positive As String, Cancel As String, Negative As
String, Icon As android.graphics.Bitmap) As Int
顯示一個message對話框
Message - 信息內容.
Title - 對話框標題.
Positive - "positive" 按鈕需要顯示的文本,如果不想顯示這個按鈕,設置為""
Cancel - "cancel" 按鈕需要顯示的文本,如果不想顯示這個按鈕,設置為""
Negative - "negative"按鈕需要顯示的文本,如果不想顯示這個按鈕,設置為""
Icon - 對話框中的圖標. 如果不想顯示這個按鈕,設置為Null
返回DialogResponse的一個值.
例如:
Dim result As Int
result = Msgbox2("This is the message", "This is the title", "Good", "", "Bad",
LoadBitmap(File.DirAssets, "smiley.gif"))
If result = DialogResponse.Positive Then ...
Not (Value As Boolean) As Boolean
boolean值取反.
Null As Object
NumberFormat (Number As Double, MinimumIntegers As Int, MaximumFractions As Int) As
String
將指定的數值類型轉換為字符串.
這個字符串將至少包含MinimumIntegers位整數部分和至多MaximumFractions位小數部分
例如:
Log(NumberFormat(12345.6789, 0, 2)) '"12,345.68"
Log(NumberFormat(1, 3 ,0)) '"001"
NumberFormat2 (Number As Double, MinimumIntegers As Int, MaximumFractions As Int,
MinimumFractions As Int, GroupingUsed As Boolean) As String
將指定的數值類型轉換為字符串.
這個字符串將至少包含MinimumIntegers位整數部分和至多MaximumFractions位小數部分以及最少MinimumFractions 位小數部分
GroupingUsed - 決定是否每3位整數用,隔開.
例如:
Log(NumberFormat2(12345.67, 0, 3, 3, false)) '"12345.670"
PerXToCurrent (Percentage As Int) As Int
返回由寬度百分比決定的實際位置
例如:
Button1.Width = PerXToCurrent(50) 'Button1.Width = 50% * Activity.Width
一個簡短的方式表示是在數字后面加上'%x'(中間無空格)
所以前面的代碼等同於:
Button1.Width = 50%x
PerYToCurrent (Percentage As Int) As Int
返回由高度度百分比決定的實際位置
例如:
Button1.Height = PerYToCurrent(50) 'Button1.Height = 50% * Activity.Height
一個簡短的方式表示是在數字后面加上'%y'(中間無空格)
所以前面的代碼等同於:
Button1.Height = 50%y
Power (Base As Double, Exponent As Double) As Double
ProgressDialogHide
隱藏一個可見的進度框,如果無進度框則不作處理
ProgressDialogShow (Text As String)
顯示一個進度對話框,包括一個進度圖像和文本
不同於Msgbox 和InputList ,這段代碼不會阻塞
你需要調用ProgressDialogHide 來移除此窗口
窗口在用戶按下返回鍵時也將被移除
ProgressDialogShow2 (Text As String, Cancelable As Boolean)
顯示一個進度對話框,包括一個進度圖像和文本
不同於Msgbox 和InputList ,這段代碼不會阻塞
你需要調用ProgressDialogHide 來移除此窗口
Cancelable -決定用戶是否能通過返回鍵取消此對話框
QUOTE As String
引號. 等價於Chr(34).
Regex As Regex
正則表達式相關的方法
Return
從當前sub過程返回,並返回指定的值(可選擇)
語法:
Return [value]
Rnd (Min As Int, Max As Int) As Int
返回Min(包含)和Max(不包含)之間的一個隨機整數
Round (Number As Double) As Long
返回四舍五入的整數
Round2 (Number As Double, DecimalPlaces As Int) As Double
返回包含指定位數小數的四舍五入的數
Sender As Object
返回事件觸發中的object 對象
只在事件過程中有效
Sin (Radians As Double) As Double
SinD (Degrees As Double) As Double
Sqrt (Value As Double) As Double
返回平方根
StartActivity (Activity As Object)
開啟一個活動,或把它移動最前端
Activity 可以是一個Activity的標簽字符串,或者一個實際的Activity對象
完成調用以后,當前的activity 將暫停,而目標activity將被重新開始
例如:
StartActivity (Activity2)
Sub
定義一個過程,包括參數和返回值(可選)
語法:
Sub name [(list of parameters)] [As return-type]
參數包括參數名和類型.
數組參數的維度不能包含在內.
例如:
Sub MySub (FirstName As String, LastName As String, Age As Int, OtherValues() As
Double) As Boolean
...
End Sub
在這個例子中OtherValues 是一個一維數組
返回類型如果是數組的話,需要括號
TAB As String
制表符.
Tan (Radians As Double) As Double
TanD (Degrees As Double) As Double
ToastMessageShow (Message As String, LongDuration As Boolean)
顯示一個簡短的消息並自動消失
Message - 需要顯示的文本消息.
LongDuration - 如果設置為true,顯示時間將會稍微長一點
True As Boolean
Try
Any exception thrown inside a try block will be caught in the catch block.
任何異常都需要在一個try模塊中被拋出,並在catch模塊中捕獲
調用LastException 可以獲取捕獲的異常
語法:
Try
...
Catch
...
End Try
Type
定義一個結構體.
只能在Globals和Process_Globals中定義
語法:
Type type-name (field1, field2, ...)
Fields 包括名稱和變量類型.
例如:
Type MyType (Name As String, Items(10) As Int)
Dim a, b As MyType
a.Items(2) = "very interesting item"
Until
循環執行,直到條件為真
語法:
Do Until condition
...
Loop
While
當條件為真時,循環執行
語法:
Do While condition
...
Loop
LayoutValues
Holds values related to the display.
與顯示相關的數值
你可以通過GetDeviceLayoutValues獲取當前顯示界面相關的數值
例如:
Dim lv As LayoutValues
lv = GetDeviceLayoutValues
Log(lv) '調試打印
Activity.LoadLayout and Panel.LoadLayout
返回一個指定的LayoutValues 對象的布局值
事件:
無
成員:
Height As Int
Scale As Float
toString As String
Width As Int
成員描述:
Height As Int
顯示的高度(pixels)
Scale As Float
The device scale value which is equal to 'dots per inch' / 160. For most devices the value
will be 1.0 or 1.5 (high resolution).
相較於標准分辨率的放大比例
toString As String
Width As Int
顯示的寬度(pixels)
String
string在B4A中是不可變的,即你可以改變一個字符串變量的值,但是你不能改變字符串本身存儲位置的值
所以SubString,Trim和ToLowerCase返回的是一個新的字符串,他們不會改變當前字符串的值
用途:
Dim s As String
s = "some text"
s = s.Replace("a", "b")
如果你需要一個可變的字符串,你可以使用StringBuilder
注意字符串常量也是字符串對象
Log(" some text ".Trim)
事件:
None
成員:
CharAt (Index As Int) As Char
CompareTo (Other As String) As Int
EndsWith (Suffix As String) As Boolean
EqualsIgnoreCase (other As String) As Boolean
GetBytes (Charset As String) As Byte()
IndexOf (SearchFor As String) As Int
IndexOf2 (SearchFor As String, Index As Int) As Int
Length As Int
Replace (Target As String, Replacement As String) As String
StartsWith (Prefix As String) As Boolean
SubString (BeginIndex As Int) As String
SubString2 (BeginIndex As Int, EndIndex As Int) As String
ToLowerCase As String
ToUpperCase As String
Trim As String
成員描述:
CharAt (Index As Int) As Char
返回給定索引的字符
CompareTo (Other As String) As Int
按字母順序比較兩個字符串
返回值小於0,表示當前字符串領先於Other字符串
返回值等於0,表示字符串相同
返回值大於0,表示當前字符串落后於Other字符串
注意大寫字母領先於小寫字母
例如:
"abc".CompareTo("da") ' < 0
"abc".CompareTo("Abc") ' > 0
"abc".CompareTo("abca")' < 0
EndsWith (Suffix As String) As Boolean
如果字符串是以指定的Suffix結尾,返回true
EqualsIgnoreCase (other As String) As Boolean
無視大小寫,如果兩個字符串相等,返回true
GetBytes (Charset As String) As Byte()
將字符串編碼成一個Byte數組
例如:
Dim Data() As Byte
Data = "Some string".GetBytes("UTF8")
IndexOf (SearchFor As String) As Int
返回查找到的第一個匹配字符串的位置
如果未找到,返回-1
IndexOf2 (SearchFor As String, Index As Int) As Int
返回查找到的第一個匹配字符串的位置
從指定的索引開始查找
如果未找到,返回-1
Length As Int
返回字符串的長度
Replace (Target As String, Replacement As String) As String
返回一個覆蓋了指定字符串的新字符串
StartsWith (Prefix As String) As Boolean
Returns true if this string starts with the given Prefix.
如果字符串以指定的字符串Prefix為前綴,返回true
SubString (BeginIndex As Int) As String
Returns a new string which is a substring of the original string.
返回一個從指定位置截取的新字符串
新的字符串包含指定的字符位置,直至字符串結尾
例如:
"012345".SubString(2) '返回 "2345"
SubString2 (BeginIndex As Int, EndIndex As Int) As String
返回一個從指定位置截取的新字符串
新的字符串包含指定的起始字符位置,不包含結尾字符位置
例如:
"012345".SubString2(2, 4) '返回 "23"
ToLowerCase As String
將字符串轉換為小寫
ToUpperCase As String
將字符串轉換為大寫
Trim As String
去掉字符串前端和尾端的空格
StringBuilder
StringBuilder是一個可變的字符串,不同於通常的字符串不可變
StringBuilder適合用於將多個字符串合並
下面的代碼演示了通過StringBuilder提高性能
Dim start As Long
start = DateTime.Now
'Regular string
Dim s As String
For i = 1 To 5000
s = s & i
Next
Log(DateTime.Now - start)
'StringBuilder
start = DateTime.Now
Dim sb As StringBuilder
sb.Initialize
For i = 1 To 5000
sb.Append(i)
Next
Log(DateTime.Now - start)
在真實設備上,第一個循環需要20s,第二個循環少於10s
函數StringBuilder.ToString可以將對象轉換為一個字符串
事件:
無
成員:
Append (Text As String) As StringBuilder
Initialize
Insert (Offset As Int, Text As String) As StringBuilder
IsInitialized As Boolean
Length As Int [只讀]
Remove (StartOffset As Int, EndOffset As Int) As StringBuilder
ToString As String
成員描述:
Append (Text As String) As StringBuilder
在結尾連接指定的字符串
返回同一個對象,你可以多次調用
例如:
sb.Append("First line").Append(CRLF).Append("Second line")
Initialize
初始化對象
例如:
Dim sb As StringBuilder
sb.Initialize
sb.Append("The value is: ").Append(SomeOtherVariable).Append(CRLF)
Insert (Offset As Int, Text As String) As StringBuilder
從指定的位置插入字符串
IsInitialized As Boolean
Length As Int [只讀]
返回對象中的字符數
Remove (StartOffset As Int, EndOffset As Int) As StringBuilder
移除指定的字符串
StartOffset - 第一個將被移除的字符索引.
EndOffset - 結尾字符索引. 這個字符不會被移除
ToString As String
將對象轉換為string
Timer
定時器對象
推薦在一個時間較長的循環中使用Timer,因為他運行UI線程調度事件和消息
注意如果UI線程忙,timer事件將不會立即被觸發(除非你使用了DoEvents)
timer的Enable屬性默認是false,需要改成true才能開始工作
Timer 事件在activity 活動暫停或一個阻止對話框可見時不會被觸發,Timers 需要在Process_Globals中聲明
否則你可能會在activity 重新創建時產生多個timers過程
如果activity 暫停,建議將timer也暫停,在activity恢復時重新開啟,這樣能節省CPU和電量損耗
事件:
Tick
成員:
Enabled As Boolean
Initialize (EventName As String, Interval As Long)
Interval As Long
成員描述:
Enabled As Boolean
Initialize (EventName As String, Interval As Long)
初始化定時器,並指定事件名和觸發間隔時間(毫秒).
注意:這個對象一定要在Process_Globals中聲明
例如:
Timer1.Initialize("Timer1", 1000)
Timer1.Enabled = True
Sub Timer1_Tick
'Handle tick events
End Sub
Interval As Long
獲取或設置定時器的觸發間隔(毫秒)
