随笔分类 - Android
摘要:以下内容是根据Delphi的帮助文件进行试验的,主要测试Android下的消息提醒。 首先建立一个空白的Android工程,然后在窗体中加入一个TNotificationCenter控件,如下图: 再在uses中引用文件,如下:uses FMX.Platform;窗体上控件放置如下图:发送消息的代码如下:procedure TForm2.Button2Click(Sender: TObject...
阅读全文
摘要:我觉得Delphi最强大的的功能之一就是开发数据库三层应用的DataSnap,在Android上的实现,首先是完成服务器的设计:(1)利用向导完成DataSnap服务器的框架,如下图:由于是实验,所以选择VCL程序,如果是实际应用,建议Service程序我习惯使用TCP/IP作为通讯协议,简单且速度快,Sample Methods是演示和测试用缺省211端口使用TDSServerModule作为数据服务提供主体,非常方便变更为Service应用服务(2)设置服务器数据在TDSServerModule中设置数据,为简便起见,采用BDE引擎的DBDEMOS下animals.dbf数据库,有文字也有
阅读全文
摘要:Delphi XE5 下TEdit控件有个属性:KeyboardType,如下图: 该属性决定了当焦点进入TEdit时,系统弹出的输入窗体,按照其帮助文件说明,不同取值的输入窗体不同,如下图: 根据不同需要选择,也可以在运行期改变取值,通过放置一个TPopupBox控件来进行设置,设计界面如下: 代码如下: procedure TfrmKeyboard.PopupBox1...
阅读全文
摘要:delphi xe5 编译的程序在启动时会有短暂的黑屏出现,这个现象产生是因为启动首个activity时会加载一些初始化数据,整个时间大约在2~3秒,如何处理?网上有些资料,这里主要参考和整理了CSDN论坛上第42#liaobo的回复。第一步:建立2个文件:loading.png 和 styles.xml,其中loading.png 是启动时替代黑屏的图片,styles.xml是对背景图片的定义,其内容为: 特别需要注意的是:(1)Delphi中代码是大小写不敏感的,所以Delphi程序员一般在写程序时不太注意大小写。而在Java下大小写是敏感的,在styles.xml定义中“loading.
阅读全文
摘要:Delphi XE5下,TMainMenu和TPopupMenu不可用,那么如何支持Android的菜单呢? 查看了一些资料,不得要领,只是摸索着先模拟一下吧。 首先在窗体上放置一个TPanel,在其上放置一个TListBox充当菜单项,对每一个Item的OnClick事件编写具体的动作。如下图: 由于要模拟菜单键,所以Panel放置在左下角,且设置Anchors属性为[akLeft,a...
阅读全文
摘要:今天尝试了TTabControl的使用。在很多Android的app中,首次启动时都使用选项卡模式进行产品介绍,用户通过向左滑动,改变选项卡。在xe5下这项工作由TTabControl控件完成,如下图: 1、TTabControl外观 TTabControl的外观由属性TabPosition控制,可选项包括: tpTop 选项tab在控件上方 tpBottom...
阅读全文
摘要:Android程序开发必然用到按钮,在XE5下,按钮的一个比较重要的属性就是StyleLookup,预置了一系列常用的图标,如下图: 另外2个常用属性就是: GroupName和IsPressed:一组按钮取一个相同的GroupName,控制其中只能有一个被按下 按钮的分布一般有几种形式: 1、自由摆放,也就是在Form上自由放置; 2、放置在TGridLayout控件中,由T...
阅读全文
摘要:在Delphi中窗体与窗体之间的交互与调用非常简单,在FMX中这个优势得到了充分体现,先建立一个主窗体和一个需要调用的窗体: 在主窗体上放的按钮事件如下: … private { Private declarations } //定义私有窗体对象 Ffrm: TfrmOtherFMX; … procedure TfrmMainFMX.But...
阅读全文
摘要:在VCL下,常用的询问对话框包括 procedure TfrmMainVCL.btnAppMessageboxClick(Sender: TObject); begin if Application.MessageBox('是否退出?', '询问', MB_YESNO + MB_ICONQUESTION) = IDYES then begin...
阅读全文
摘要:按照Embarcadero的说法:Windows平台只能使用VCL,Windows、iOS和Android都可以使用FMX,并且VCL和FMX不能同时在一个程序中。FMX的用法与VCL有一定的差异,先从最简单的说起:应用程序的关闭退出在VCL中,关闭程序的主窗体也就意味着程序的主循环结束,主程序自然而然结束。所以在主窗体中使用窗体的关闭函数(Close)即可,如下:procedure TfrmMain.btncloseClick(Sender: TObject); begin Close; end; 在FMX中,由Activity替代了Form的概念,虽然TForm类仍然存在,但MainFo.
阅读全文
摘要:Delphi XE5 出来了,支持Android的开发,试用了一下,有几个问题:1、只支持ARM7的设备,不支持Inter设备。手上刚好有一个华硕K004,很遗憾用不上,只能用手机试了。2、要支持联机调试必须安装USB驱动,但一般设备都不带,后来安装360手机助手后自动安装了USB驱动,可用了。3、支持的控件、属性、方法、函数库都大变了,需要重新学习。4、联机调试的速度慢得惨不忍睹,使用仿真机还能忍受一下,使用实际设备慢得无法调试,是不是跟我用的USB驱动有关?5、编译后的apk至少5M以上,按照官方说法是:毕竟要跨平台,体积大很正常。看来Delphi XE5 支持Android的开发还有一段
阅读全文