受不了C++那种拧巴的思路, 老是忘记JAVA那些{}和; 讨厌臃肿的.NET
用惯了VB6的我被MS就这样弃如敝履?
那试试这个吧:www.basic4ppcBasic4android 语言跟 Visual Basic 予以类似,支持更多的对象。Basic4android 将代码编译成 Android 原生应用,无需其他运行环境的支持。
该工具完全为了 Android 应用开发,不支持其他平台。什么JAVA什么OBJECT C什么QT什么C++, 见鬼去吧. BASIC IS BASIC!
用惯了VB6的我被MS就这样弃如敝履?
那试试这个吧:www.basic4ppcBasic4android 语言跟 Visual Basic 予以类似,支持更多的对象。Basic4android 将代码编译成 Android 原生应用,无需其他运行环境的支持。
该工具完全为了 Android 应用开发,不支持其他平台。什么JAVA什么OBJECT C什么QT什么C++, 见鬼去吧. BASIC IS BASIC!
Basic4android language is similar to Visual Basic language with additional support for objects.
Basic4android compiled applications are native Android applications, there are no extra runtimes or
dependencies. 看来不错。
用我女儿的话来说就是: no no no!只是看到好玩的东西大家分享下而已.苹果用不起, 所以一向只关心android, java用不来, 就突发奇想会不会有basic开发工具, 股沟了一下就找到这个了.
用惯了VB6
不过话说当年borland的开发工具不是也要好过MS自己的么.
嗯, 乜些个东西是windows下面按模拟器要用的.
...WIN7我不准备用. 一直都是XP的说. 不想把资源浪费在操作系统上.
你的win7是64位版的么?
Hi,
Press on the back key and then try again.
Best regards,
Erel Uziel
Anywhere Software
蛋都定下来了.这个故事为毛要放到这个帖子里8呢? 是因为这张光盘是我刻好的这个BASIC4PPC的所有安装包, 什么JAVA什么.NET什么什么之类的.现在总算把光驱弄好了, 不过呢运行BASIC4PPC的时候直接给我一个叉, 说找不到.NET库.
我滴娘咧, 好容易跑单位下的最新的.NET4.0的framework. 难道我超前了?
有点想要重装系统了.蛋定啊蛋定.
居然说我们是私聊一刚... 这不等于就是红果果得诬陷么, 偶性取向very正常滴.待会去瞅瞅驴妹睡了没有.
...唉, 我还没跑起来, 你装的.NET FRAMEWORK是什么版本? 我重下一个试试
是啊, 从android1到4, 还有各种例程. 是android SDK MANAGER自动下载的.
估计下班前能整完
•Sample apps / showcase
•Screenshots
•Android tutorials and manuals
这个用2.2版生成的虚拟机就一直在那边不停地消耗内存, 花了3个小时还是司机状态.
不得已改成了2.3.3版本的API, 1分钟...
模式,难道楼主说的设计模式?
这个可是所有学习面对对象语言的人,都应该学习的。
这是提高软件设计能力和应对需求变化的,相当的重要!
而且要最大限度的使用它的威力,还是得学一门真正面对面对象的语言,这种语言最好支持继承,不是说用继承是代码复用,而是说继承是抽象!是对子类的抽象! 。 比如VB.NET 语言,我现在就在用它^_^ .
对了指针的基本概念也是要有的,很多时候还要调c++写的非托管代码。
模式,难道楼主说的设计模式?
这个可是所有学习面对对象语言的人,都应该学习的。
这是提高软件设计能力和应对需求变化的,相当的重要!
而且要最大限度的使用它的威力,还是得学一门真正面对面对象的语言,这种语言最好支持继承,不是说用继承是代码复用,而是说继承是抽象!是对子类的抽象! 。 比如VB.NET 语言,我现在就在用它^_^
对了指针的基本概念也是要有的,很多时候还要调c++写的非托管代码。
Dim Label1 As Label
Dim Num1, Num2 As Double
Dim Opera As String
Dim Cmd(16) As Button
End SubSub Activity_Create(FirstTime As Boolean)
Dim I,L,T,LFT,Top As Int
Dim Rct As Rect
Dim BDB(3) As GradientDrawable
Dim BDB1 As StateListDrawable
Dim Cols(2) As Int
Cols(0)=Colors.RGB(96,128,128)
Cols(1)=Colors.Black BDB(0).Initialize("TOP_BOTTOM",Cols)
BDB(0).CornerRadius=12
BDB(1).Initialize("BOTTOM_TOP",Cols)
BDB(1).CornerRadius=5
BDB(2).Initialize("TOP_BOTTOM",Cols)
BDB(2).CornerRadius=5
BDB1.Initialize
BDB1.AddState(BDB1.State_Disabled,BDB(0))
BDB1.AddState(BDB1.State_Enabled,BDB(1))
BDB1.AddState(BDB1.State_Pressed,BDB(2))rct.Initialize(10,10,300,90)
label1.Initialize("")
'label1.Invalidate2(rct)
label1.Background=BDB(0)
Label1.TextSize =38
Label1.TextColor =Colors.RGB(255,198,198)
activity.AddView(Label1,10,25,300,50)For I=0 To 15
L= I Mod 4
T= I / 4
' Lft=10+78*L
' Top=100+79*T
'rct.Initialize(Lft,Top,69,69)
Cmd(I).Initialize("Cmd")
Cmd(I).Background =BDB1
Cmd(I).TextSize = 28
Cmd(I).TextColor =Colors.RGB(198,255,255)
Activity.AddView(Cmd(I),10+ 78* L,100+ 79*T,69,69)
Select I
Case 0,1,2,3,4,5,6,7,8,9: Cmd(I).Text = I
Case 10: cmd(I).Text ="+"
Case 11: cmd(I).Text ="-"
Case 12: cmd(I).Text ="X"
Case 13: cmd(I).Text ="/"
Case 14: cmd(I).Text ="="
Case 15: cmd(I).Text ="C"
End Select
Next
End SubSub Cmd_Down()
Dim Str As String
Dim Send As Button
Send=Sender
Str = Send.text
Select Str
Case "+","-","X","/":
Num2=Num1
Opera=Str
Str ="0"
Num1=0
Case "=":
Select Opera
Case "" : Return
Case "+" : Num2 =Num2+Num1
Case "-" : Num2 =Num2-Num1
Case "X" : Num2 =Num2*Num1
Case "/" : Num2 =Num2/Num1
End Select
Str =Num2
Case "C": Mun1=0
Num2=0
Opera=""
Str ="0"
Case Else: If Label1.Text <>"0" Then Str =Label1.Text & Str
Num1=Str
End Select
Label1.text=Str
End Sub只需要贴代码进去就可以运行了, 不需要设置界面.
如:
for i=1 to 3next i'这样是不行的
还有
dim n1,n2 as int 'n1,n2居然都是int类型
2.2确实是消耗资源比较厉害, 昨天我单位的电脑一共1G内存, 虚拟机一个小时没跑出来, 换2.3就1分钟. 当然这可能也正好达到我电脑的临界点有关.本质上来说, 这个BASIC只是一个用BASIC语法封装的JAVA. 以下几处皆有C的影子, 当然也是JAVA的影子:DIM A,B,C as int 一下子定义了3个Int类型变量, 不同于VB6中, 但是这个对于新手来说反倒是好事.
For I = xxx to yyy
Next '此处Basic4android(下文简称B4A)不加I, 不过VB5,6中也不强制要加, 反正我是一直懒得加的, 所以影响不大界面方面可以说非常强大, 就像windows下面各种"高科技"的directUI, 在B4A里面因为系统的先天优势显得很强大, 上面那个例子就可以看出来了, 渐变色什么的几句话就搞定了, 人家天生就会这个, VB6没法比.还有数组方面:
Dim I(10) as int '定义了长度为10个元素的数组, 实际可用为I(0)至I(9), 这点同C一样, VB中同样的定义实际上从I(0)到I(10)都可用, 等于定义了11个元素, 应该视为BUG控件数组方面的区别:
Java什么不知道, .NET里面好像也没控件数组的说法吧.
B4A中则是中西结合了, 定义的时候可以定义成控件数组, 触发事件的时候则要像.NET那样区分, 例:Dim BTN(10) as Button '定义了按钮控件数组BTN(0 to 9)
....在触发按钮点击事件时:
sub BTN_Down
Dim Send as Button
Send = Sender
'然后可以通过每个按钮在初始化时的不同属性来区分了, 比如Tag, Text等等, 用惯了Index的上手有些不习惯, 不过适应一下就好了.
Select Send.Text '此处又是一点小区别, B4A直接写Select 表达式 即可, 不要写Case
case "OK" : .......
Case "Cancel": .......
Case "Quit": ....
End select
End Sub
还有点区别:
VB6中如果Case中有连续值可以写:
Case 1 to 9:
B4A中只能乖乖的写
Case 1,2,3,4,5,6,7,8,9:B4A取消了VB6中sub和function的区别, 统统用sub来表达, 区别只是加不加返回值而已, 好事, 赞同!For循环中可以使用Continue了, 好事, 赞同!退出过程用 Return '如果是函数有返回值则 Return 返回值, 无返回值的过程直接用Return
这算是直接回归C了, 语法上来说比VB6的要简化.错误捕捉和.NET一样用 Try catch end Try ( Java也是这样吧, 我没学过不知道, 猜想的)是否有位操作...这个还没看到, 待会去查查.总的来说语法方面差别不大, 即使某些方面有所差异, 只要想一下C就明白了, 应该说是把一些C语法中的便利结合到Basic中去了.但是总体来说, 毕竟是用在Android上的, 完全不同的软件硬件平台吧, 应用范围也完全不同. 所以还需要好好学习,天天那个向上.
这个, 没办法呀, 用惯了BASIC, 再加上人老了, 学别的东西学不进去了. 只好小众一下了.
关于虚拟机用的虚拟SD卡, 可以先用Android的Tools中的MKSDCard命令创建一个空的CD卡镜像, 然后用UltraIOS打开编辑, 以添加或删减文件.
再用模拟器来读取该镜像文件即可.
先在Android SDK的安装目录中找到ADB.EXE所在的文件夹, 好像是在\Platform_tools\下面吧
然后DOS状态下进入这个目录输入命令:
xxxx:\>ADB install XXXX.APK '用命令安装APK包到虚拟机, 虚拟机必须事先打开着.
如果出现ERROR,说什么虚拟机连接失败, 只要你保证虚拟机确实是运行中, 只要重新来一遍即可等出现SUCCESS字样就成功了, 到虚拟机的应用程序管理中就可以看到安装上去的软件了.