草庐IT

Delphi7_VCL

全部标签

android - 如何使用 FireMonkey for Delphi XE5 检测/处理屏幕旋转

首先-我是Android和FireMonkey编程的初学者,所以请记住这一点:-)。我制作了一个FireMonkey/Android应用程序,它可以根据屏幕大小和方向调整/重排其控件,但我不知道如何设置我的应用程序以便在用户旋转屏幕时调用。如果我在其中运行Firemonkey/Win32并显示执行以下操作的按钮:PROCEDURETMainForm.FlipForm;VARW,H:INTEGER;BEGINW:=Width;H:=Height;Width:=H;Height:=WEND;然后捕获FormResize事件,我的表单按应有的方式调整大小/重排。我想在Android上运行时做

android - 使用 MSBuild 构建 Delphi Android 项目的问题

我已经调用MSBuild来构建我的VCL项目很长时间了,并且也想添加一些android项目。我认为要求我的相同调用可以在针对Android而不是Windows的DelphiXE8项目上工作太过分了,但它似乎确实接近了。我的输出如下。如您所见,它似乎一直通过编译,但在对list进行某些操作时落在了这一点上。任何人都可以建议我可以考虑解决的问题吗?谢谢。09/08/201509:03:29BuildingC:\Art_soft\Code\PRT-MS1\Delphi\Libraries\Multiplatform\Delphiprojects\FMXCommonUnitTests_Andr

android - Delphi Rio 无法读取设置了 READ_EXTERNAL_STORAGE 权限的外部存储

我有一个曾经在DelphiSeattle创建的项目,现在我想搬到DelphiRio。我使用findfirst/findnext读取外部SD卡上的目录结构i:=findfirst(datadir+'*',faanyfile,ts);datadir变量包含一个有效的目录。在西雅图,代码工作正常(返回值i=0)并且第一个目录条目在变量ts中返回。现在,在Rio上编译相同的代码,我得到一个返回错误值i=13(访问被拒绝)。我的项目中设置了READ_EXTERNAL_STORAGE权限。如果我将list文件中的targetSdkVersion(在Rio中自动设置为26)硬编码为19(即minSd

android - 有没有人做过或有人知道使用 Delphi/Prism 为 Android 操作系统开发的方法?

是否有可能以某种方式使用Delphi语言(或Prism,如果绝对必要)为Android平台开发程序?任何起点? 最佳答案 有DelphiforAndroid,这是LenniedeVilliers的一个项目。博客:http://lenniedevilliers.blogspot.com/2010/09/delphi-for-android-sneak-preview-2.html截屏:http://www.lenniedevilliers.net/preview/DAndroid_01.avi

android - 常量字符串参数和适用于 Android 的 Delphi XE5 编译器

希望我只是遗漏了一些明显的东西,但我似乎发现在使用DelphiXE5Android编译器时常量字符串参数被破坏了。测试代码:1)创建一个新的空白移动应用程序项目。2)添加TButton到表格,并创建一个OnClick它的处理程序。3)像这样填写处理程序:procedureTForm1.Button1Click(Sender:TObject);beginGoToDirectory(PathDelim+'alpha'+PathDelim+'beta');GoToDirectory(FParentDir);end;4)在表单类声明中,添加两个字段和一个方法,如下所示:FCurrentPath

android - 如何在 Delphi-XE5 Firemonkey 应用程序中关闭 android 应用程序?

我有这段代码procedureTFormMain.FormCloseQuery(Sender:TObject;varCanClose:Boolean);varmsg:String;beginmsg:='Doyoureallywanttoexit?';ifMessageDlg(msg,TMsgDlgType.mtConfirmation,[TMsgDlgBtn.mbYes,TMsgDlgBtn.mbNo],0)=mrNothenCanClose:=FalseelseCanClose:=True;{FIXME:don'twanttoworkonAndroid}end;它在Windows上完

android - Delphi 10.3 Rio减少了支持的Android设备数量?

我的Delphi10.2.3应用程序已提交到GooglePlay,修复来自以下答案:DelphiAndroidappAPIlevel26?GooglePlay报告说这个版本支持超过400台设备。同一个项目是用10.3Rio构建的,但在提交时,GooglePlay警告说这个新构建仅支持223台设备。是什么导致支持的设备减少? 最佳答案 DelphiRIO10.3将AndroidminSdkVersion更改为19,排除了低于Android4.4/KitKat的设备,这减少了目标设备的数量。

android - 如何使用 Delphi XE5 在 Android 上访问 OpenGL 渲染上下文?

在使用DelphiXE5开发应用程序时,如何在Android设备上创建OpenGL渲染上下文?基本上我不知道从哪里开始。目前还没有OpenGL示例。我希望存在的东西:某种事件(Panel.OnRender)可以提供我可以在其中调用OpenGL调用的现有上下文。可以放置在窗体设计器中的通用TOpenGLSurface控件一种在运行时在主窗体上创建上下文的方法。根据我目前的研究,TWindowManager.Render可以访问OpenGL调用并使用它们来呈现弹出窗口。编辑:将计时器添加到表单并调用此过程会使屏幕充满绿色,这意味着GL上下文已经存在:procedureTForm1.Time

c++ - Delphi PChar 到 C++ const char*

我正在尝试使用native程序中的C++dll。我正在按照解释的虚拟方法场景here假设我的C++函数签名的形式是intSetup(constchar*szIp,constchar*szPort);而对应的delphi签名为functionSetup(ip,port:PChar):Integer:virtual;cdecl;abstract;我可以从delphi程序的某个地方调用pObj.Setup('192.168.1.100','97777');控件进入dll,但是szIp和szPort形参只接收我从delphi程序传过来的ip和port的第一个字符。我知道它与在delphi中正确

c++ - 在 Delphi 中明确表达所有权

我主要是一名C++程序员,我已经习惯了类模板,如std::unique_ptr,std::shared_ptr等来表达我的对象的所有权。Delphi的标准库中是否有类似的东西?在编写代码时,是否有任何我应该遵循的表达对象所有权的最佳实践?编辑:自从C++11成为标准以来,有两个轻量级辅助类,std::shared_ptr和std::unique_ptr.如果我创建一个std::shared_ptr类型的变量,它表示指向具有共享所有权的int的指针:在引擎盖下是引用计数,当引用计数达到零时,指针将自动释放。这种类型表达了一种“共享所有权”,其中许多对象在使用完资源后共同承担销毁资源的责任