在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
按照Embarcadero的说法:Windows平台只能使用VCL,Windows、iOS和Android都可以使用FMX,并且VCL和FMX不能同时在一个程序中。FMX的用法与VCL有一定的差异,先从最简单的说起: 应用程序的关闭退出 在VCL中,关闭程序的主窗体也就意味着程序的主循环结束,主程序自然而然结束。所以在主窗体中使用窗体的关闭函数(Close)即可,如下: procedure TfrmMain.btncloseClick(Sender: TObject);
在FMX中,由Activity替代了Form的概念,虽然TForm类仍然存在,但MainForm通过关闭函数无法结束程序,使用Application.Terminate均无效,调整为: uses procedure TForm2.SpeedButton1Click(Sender: TObject); 此时程序直接关闭了,如果需要在退出前询问一下,可以参考VCL中的做法,在按钮事件中仍然使用关闭函数,在OnCloseQuery事件中询问是否退出,在OnClose事件中实现程序的关闭,如下: uses procedure TfrmMain.FormClose(Sender: TObject; var Action: TCloseAction); procedure TfrmMain.FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure TfrmMain.btncloseClick(Sender: TObject);
procedure TfrmMain.FormKeyDown(Sender: TObject; var Key: Word; //当按下硬件键盘的返回按钮时,关闭当前窗体
在虚拟机中运行如下: |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论