[FMX] FMX.MultiResBitmap 的一处改进

红鱼儿在其博客中发表的一篇文章中引述了官方QC中的一处缺陷报告,谈到了 TCustomMultiResBitmap.ItemByScale 的效率问题,并提供了一个优化。不过我觉得它的优化有点太偷懒了,而且一旦不匹配,效率还不如原来的实现。所以我简单审视了下 ItemByScale 的代码,实际上它的效率问题在于过度优

[FMX] 为你的移动应用加入在线更新支持

程序永远与 Bug 相伴,即使不是因为 Bug,我们的程序也可能因为增加或调整功能等原因,需要进行升级。那么在移动应用中,实际上还是蛮简单的。 第一关:在服务器端为升级准备必要的文件 版本检查文件:应用需要下载此文件与本地的文件进行比较以确定是否需要更新,为了方便我们可以用 Json 格式来定义更新的应用的信息,比如:

[FMX] 在应用中检测是否已经联网

好吧,我这人实在是懒,不想装组件,而且也不关心太复杂的功能,就是想让用户在使用软件之前,检查下网络是否连接了,所以查找资料写了一个函数。 首先加一个简单的说明: 联网只代表联网,并不代表你一定能够访问指定的网址。比如你虽然连接了 Wifi,但无线路由器却没有连接到 Internet,函数会返回已经联网,但是你实际上还是

[SDK] QSDK 项目放到了 GitHub

该项目的目的只是将知名应用的开放 SDK 翻译成 Delphi 的版本(如果未提供)。基于官方相应平台的版本修改,如果官方不支持相应的平台,也就不会有相应的SDK。欢迎大家积极参与,一起补充 SDK 的内容。 Ticr(Tu2/tht2009) 提供的 Objective-C IDE 扩展: 使用说明 GitHub 源

[杂谈] Android 下预编译的 OpenSSL 库(1.0.2g)

这个是一位德国的朋友 hmm.fanz 分享给我的,经过其同意分享给大家。大家将其随自己的 android 程序一起发布就可以了,具体的发布过程就不在这里说了,大家可以参考以前的文章。 下载 感谢 hmm.fanz,这样子通过 QSendMail 发送邮件时,大家在 Android 下就可以使用 SendBySSL 了

[FMX] 计算文本所占用的显示区域大小

我们有时需要手动计算文本内容显示所需要占用的区域大小,在 VCL 中相信大家都很熟悉怎么做了。但在 FMX 中如何去跨平台的实现它,这就需要研究研究了,毕竟连 FMX 自带的 TLabel 的 AutoSize 设置为 true 都没产生任何效果。 好吧,首先看看我们要包含的单元: FMX.TextLayout :我们

[QWorker] 更新:修正了信号作业清理的一处问题,并更改了信号容器

【问题描述】 1、信号作业清理原来使用的哈希表忘记考虑哈希桶位置重复,造成未正确清理掉。 2、信号作业的容器由哈希表改为普通的数组,以提升效率(此业务场景更适合用普通的数组)。 【严重程度】 高 【更新级别】 推荐 【特别感谢】 MLSkin

[FMX]OpenUrl 的跨平台实现

OpenUrl 是 iOS 中 UIApplication 提供的一个函数,用于调用其它程序。实际上各个平台都有自己的实现,这里提供一个直接封装完的跨平台版本给大家。

比如我们在某个平台(Windows、OSX、Android 和 iOS 之一)调用默认

[FMX] 获取应用程序所在的根目录及文件名

这个函数适用于 iOS、Android、Windows、OSX,但仅适用于 Delphi/C++ Builder,对别的语言没多大的参考价值。当然,也不能说真的没有,有兴趣的可以朋友可以参考 Delphi 中的 System.pas 单元的源码,然后再加以改造并参考本部分的代码一样可以实现跨平台的获取应用程序根目录及文

[FMX] 在应用切换到后台时保存当前状态

在移动应用开发中,一个程序被切到后台,有的时候,我们需要保存下状态,然后以便在程序被操作系统在后台中止时,再次启动能够恢复原来的状态(比如 iOS 中,你的程序被切后台后,很可能由于某些原因(如内存不足)被操作系统中止)。要实现这个效果,您可以: 1、在主窗体的 OnCreate 事件中,检查 SaveState 的

[FMX] 写了一个Helper,为TCustomScrollBox的子类添加ScrollInView方法

因为要用到,所以特意添加了这么个方法,FMX 的 TCustomScrollBox 没有提供,或者是我没有找到正确的,所以特意加了一个。另外,针对 TControl 加了一个 LocalToParent 函数用于将指针的坐标转换为指定级别的父控件的坐标。 完整源码奉上,但声明下,我只测试了一部分我用到的情况,其它情况没

[FMX] TListBox 的设置 ItemIndex 不会自动滚动到相应记录的处理

好吧,我不确定这是不是Bug,不过按我的想法,设置了 ItemIndex 属性,显示时应该让记录滚动到可视区,让我看见,但却就是看不见呀看不见~~~~ 跟进源码,原来是 ContentLayout 没有值造成的,所以,要修正这一问题的简单做法就是先调用一下列表框的ApplyStyleLookup 方法。 所以,截止 B

[FMX] FMX 的 Style designer 支持 FixedWidth/FixedHeight 属性设置了

这两个属性用于控制控件的大小是否允许通过 Object Inspector 改变,如果设置为非0值,则在Object Inspector 或者代码中设置 Width / Height 属性不会起作用,也就是说会固定宽度或高度。这个在XE 8 中需要我们手动处理样式文件,目前看已经不需要了。

[FMX] 自定义一个带图标的编辑框

好吧,FMX 我还是使用组合大法,父子关系如下图所示: 核心的几点提示: 1、Edit 的样式要选择 transparentedit; 2、Image 要进行一下适当的缩进,以避免覆盖底下的那条横线以及和右侧的文字区大小所匹配,然后左对齐; 3、Edit 的对齐方式是Client,填充客户区; 4、Line 的对齐方式

【付费教程】在 Android开发中使用 C 代码

【价格】 以人民币计价:个人用户:99元 企业用户:500元 【作者】 D10.天地弦 185511468 【视频长度】 待定 【视频语言】 中文,普通话 【视频编码】 格式:H.264 MP4 分辨率:1024×768 【教程源码】 包含示例工程源码 【上架时间】 预计 2016 年 5 月 18 日 ~ 2016 

[QString] 新增 UrlMerge 函数说明

QString 新增了一个 UrlMerge 函数用来替代Delphi自身 System.Net.UrlClient 单元提供的 TURI.PathRelativeToAbs 函数。为啥要替换它?理由只有一个:它的解析支持有点小问题,所以自己重写一个。 URL 相对路径转换为绝对路径有几种情况: 相对路径实际上是一个带

[QString] QString 中那些与字符串解析相关的函数

QString 提供了很多与字符串相关的函数来简化字符串的解析,不使用这些函数当然也可以解析字符串,这些函数只是简化字符串解析时的代码: DecodeToken DecodeToken 按指定的分隔符来解析出第一个字符串,分隔符可以有多种。 SplitToken SplitToken 按指定的分隔符分解所有的字符串内容