Articles of delphi

适用于Android的Delphi VCL

我见过lenniedevilliers的一个“Delphi for Android”项目,这非常激励我。 我,但该项目中只有少数VCL(tbutton,tEdit和Tlabel)。 任何人都可以给我一个提示,包括项目的菜单栏和进度条

在哪些用途中我可以findSharedActivityContext?

在使用FMX.Helpers.Android for XE6时,存在SharedActivityContext 但对于XE7,我在使用FMX.Helpers.Android时找不到SharedActivityContext。 还有另一种方法是它被转移到另一种用途吗?

如何以编程方式按互联网上的按钮

如何在TWebBrowser页面内容中调用按钮单击? 我find了VCL和旧版Delphi的代码: WebBrowser.OleObject.Document.GetElementByID(‘ID HERE’).Click; 我正在使用XE5,为Android和iOS开发,所以我不能使用上面的代码。 任何帮助或建议将不胜感激。 谢谢 !

在TWebBrowser中将引脚添加到Google Map并处理点击

如何在TWebBrowser中将引脚添加到Google Map并在单击引脚时调用事件? 该解决方案需要适用于iOS和Android。

适用于Android的Firemonkey游戏循环

我目前正在Firemonkey中为我的Android手机制作2D游戏,使用一些TImage控件并控制它们的位置和角度。 就那么简单。 我尝试使用我正常的循环方式,在Windows中运行良好/完美但在Android上运行失败。 方法#1:“无结束”循环(坏) 我的主要问题是我想通过使用像这样的“无端循环”来避免不必要/意外的行为,我必须调用Application.ProcessMessages() : while (Game.IsRunning()) do begin { Update game objects and stuff } World.Update(); { Process window messages, or the window will not respond anymore obviously } Application.ProcessMessages(); { And thats what i want to avoid } end; 问题是,当我陷入循环并且还调用过程来处理消息时,我可能遇到很多问题,而且我也不认为这是一个好方法。 方法#2:TTimer(甚至不考虑它;-)) 由于TTimer在很多方面都很糟糕,并不打算用于这种事情,我只是将TTimer放在最小间隔的方法就会失败。 此外,我从未尝试过其他计时器,但如果有一个真正的游戏,我会尝试它当然:) 方法#3:OnIdle – 我在Windows上通常如何操作 在Windows上,我可以使用Application.OnIdle-Event。 procedure GameLoop(Sender: TObject; var Done: […]

直接从Delphi调用Android NDKfunction的困难

可以通过JNI和NDK从Delphi调用Android C函数。 实现这一点是相当多的工作,并建议直接调用NDK函数。 为此,我创建了一个小的示例文件来沿着我在Delphi源代码中find的行声明一个外部C函数。 更具体的\source\rtl\android 。 我创建了一个非常小的测试程序来测试直接从Delphi调用C函数的function。 您将在下面find所有源代码,这是我目前正在测试的内容。 unit DLL_external; interface const MIDI_Lib = ‘/usr/lib/libmiditest.so’; test_fun = ‘test_1’; function test_1 (n: Integer): Integer; cdecl; external MIDI_Lib name test_fun; implementation initialization finalization end. 初始化和完成是必要的,因为否则会发生链接错误,这是指缺少初始化和终结代码。 通话类: unit DLL_Test_Main; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls, DLL_external; //{$I Androidapi.inc} type TForm1 = […]

Delphi XE5中的AdMob支持

我在哪里可以在Delphi XE5中findAndroid的AdMob支持? 我试图在所有组件中find它,但找不到任何东西。 我应该自己使用JNI,如果是,那我该怎么办呢?

iOS / Android与Delphi / C#桌面应用程序同步

不确定这是否是正确的Stack Exchange网站,但这里是.. 客户要求我研究是否有可能使用iOS或Android应用程序输入存储在SQLLite数据库中的信息,然后在通过电缆或其他同步技术插入时与主桌面应用程序同步。 桌面应用程序是目前在Delphi 7中编写的Windows应用程序。 是否有任何API可以同步来自Delphi可以使用的iOS / Android上的SQLLite数据库的数据? 如果没有,那么如果桌面应用程序是用C#编写的,那么它会更好吗?因为它的新语言可以更容易地使用API​​吗?

他们的任何规则是根据屏幕的大小设置为图标/字体/等的大小

当我在智能手机上做应用程序时,我定义(例如)一个20px * 20px的图标。 这个图标在我的手机屏幕上看起来很棒,但不适用于大屏幕的平板电脑(如ipad pro)。 在这种情况下,图标看起来很小。 如果我按比例增加图标的大小与屏幕,那么图标最终看起来太大了。 举个例子: 在我的手机屏幕360 * 640上,图标大小为20x20px 在我的平板电脑屏幕1024×1366上,图标大小约为60px * 60px =>太大了 有人知道一个很好的规则来设置图标/字体/等的大小。 根据屏幕的大小? 我在delphi(firemonkey)

条形码读取Delphi xe7,意图不触发后的事件

在我的应用程序中,使用XE7 for Android / iOS开发,我有一个用于扫描条形码的表单。 根据find的条形码,我的应用程序会validation它是否是可接受的条形码。 以下教程: http : //www.fmxexpress.com/qr-code-scanner-source-code-for-delphi-xe5-firemonkey-on-android-and-ios/ 目前我在Android上进行测试,并且我能够集成扫描和读取条形码,但是当从find条形码的共享活动返回时,’onBarCode’事件不会触发。 相同的代码与以前版本的Rad Studio(XE4,XE5,XE6)运行良好,但现在在XE7中却没有。 以下是一些代码片段: … begin Scanner := TAndroidBarcodeScanner.Create(true); Scanner.OnBarCode := BarcodeHandler; Scanner.Scan; end; procedure TmScannerForm.BarcodeHandler(Sender: TAndroidBarcodeScanner; BarCode: String); begin text1.Text := Barcode; memo1.PasteFromClipboard; AddBarcode(BarCode, true); end; AddBarCode甚至是我用来validation和添加条形码到列表,但我没有包括它,因为该代码不是问题 – 它甚至没有触发。 Text1.text:= Barcode和memo1.paseFromClipboard在他们的validation中甚至没有解雇。 我可以确认正在读取条形码,因为如果我点击并手动粘贴,条形码会显示。 为什么这不像在以前版本的Rad Studio中那样在XE7上运行?