运行截图
Main窗体核心代码
Sub Globals
Dim w As MyClass
'These global variables will be redeclared each time the activity is created.
End Sub
Sub Activity_Create(FirstTime As Boolean)
w.Initialize(Activity, 0, 0, 100%x, 100%y, Me,"test")
End Sub
创建一个标准类
创建一个标准类MyClass,代码如下
Sub Class_Globals
Private Window As Panel
Private wParent As Panel
Private wModule As Object
Private EventName As String
Private btnOK As Button
Private btnTest As Button
Private xui As XUI
End Sub
'Initializes the floating window
'比如Initialize(Activity, 0, 0, 100%x, 100%y, Me)
'Parent = 父面板,当前窗体或已初始化的panel对象
'Module = Me
'vEventName = 事件名称
Public Sub Initialize(Parent As Panel, Left As Int, Top As Int, Width As Int, Height As Int, Module As Object,vEventName As String)
wModule = Module
EventName = vEventName
wParent = Parent
If Not(wParent.IsInitialized) Then
Log("'Parent' 必须是当前窗体或已初始化的panel对象")
Return
End If
Window.Initialize("")
wParent.AddView(Window, Left, Top, Width, Height)
btnOK.Initialize("btnOK")
btnOK.Text = "调用类内部的事件"
Window.AddView(btnOK,25%x,30%y,50%x,60dip)
' btnTest.Initialize("btnTest")
' btnTest.Text = "调用main窗体的事件"
'
' Window.AddView(btnTest,25%x,30%y+60dip*2,50%x,60dip)
End Sub
Sub btnOK_Click
xui.MsgboxAsync("你点击了 OK 键", "B4X")
End Sub