[Delphi] FMXUI布局组件简介

终于熬过了今年的最后一天班,哥们怀着兴奋,下班了赶紧去放松了一下,再吃碗热呼呼的牛肉面,回来洗个热水澡,感觉太舒服了。 当然了,这么重要的日了,不能忘了写篇文章,介绍下最近整的这个基础UI库,不能顾着自个儿舒服了,要让大家也开开心心才对吧?哈,顺便各位走过路过的满天神佛拜个早年,祝大家新春快乐,恭喜发财!(好吧,我还想

[FMX] 使用 TLine 做参考线来实现复杂布局控制

昨天有朋友看到FMX 布局策略 一文中下图的布局,想知道如何设计这种复杂的布局。实际上,这种布局确实比较复杂,设计时确实比较费劲的。 1、钟表环的设计 这个比较简单,用两个 TCircle,假设分别命名为clOuter、clInner,我们将 clInner 的父设置为 clOuter,然后设置 clInner 的 M

[译]FMX 布局策略

【注】本文虽是翻译,但老外写的太啰嗦,在保持含义不变的情况下,行文会进行精简。原文来自于官方帮助。 FireMonkey 布局是其它图形对象的容器,可用来构建复杂的可视界面。FireMonkey 布局扩展了 TControl 的功能来控制子控件的对齐、大小、缩放以及成组控制控件的可能。就象 Position、Align

[QWorker] 制作多线程日志输出查看Demo

要解决的问题: 有多个线程输出日志,日志内容需要在列表框中显示出来,不管日志输出的频率快慢,界面不能卡,不能闪烁。超过10万行日志时,自动删除最开始的1万行日志。 此问题涉及多线程编程,多线程输出时要更新界面的显示。 多线程的东西,当然不能忘了QWorker这样的神器,下面我们就来使用QWorker解决问题,哦,不对,

DFM->JSON 格式转换

应群友的要求,编写了一个解析 DFM 文件格式,将其转换为 JSON 格式的函数,需要引用 QJSON 和 QString 单元。代码分享给大家,供大家参考:

用法:

一个转换结果示例:

[技巧] 解决 Windows 8 / 10 无法通过 Screen 的 Imes 正确获取当前安装的输入法列表的问题

【问题原因】 该问题是由于微软从 Windows 8  开始,GetKeyboadLayouts 函数不再有效,而 VCL 中仍然是通过该方法获取输入法列表造成的。希望下个版本的 Delphi/C++ Builder 能够解决。 【解决办法】 如果是 Win8+,则自己从注册表读,如果是Win 7 等以前的版本,则直接

[FMX] 使用 FMX 开发 Android 程序的一点小体会

1、FMX 开发 Android 程序,你可以利用现有的控件组合出复杂的控件效果,这点很强大。比如,我们都知道默认 FMX 的 SpeedButton 和 Button 等都没有图标,没有关系,我们可以有100种方法让它拥有图标,最简单的莫过于直接放一个 TImage 和 TLabel 上去,然后调整下 TImage

[FMX] Android 下为你的程序开启抗锯齿

先看一张图:HQ-0 是简单设置 Form 的 Quality 为 HighQuality 的结果,HQ-1 是做了进一步设置的结果,DQ 是默认的效果,大家可以看到,HQ-0 和默认的没有抗锯齿的效果没啥区别。 那么,问题的关键在那里呢? 问题的关键就在你设置完品质选项后,还需要调用一个函数,缺少它,更改品质的代码不

[FMX] 使用 TabControl 实现页面滑动效果之二

之前的文章 写法自己要写的东西多一些,实际上,FMX 的Standard Actions 里提供了两个标准的动作,可以方便的实现。 1、老规矩,放上 TabControl,添加几页,然后随便放点内容。 2、添加 TGuestureManager 和 TActionList,然后设置 TabControl.Touch.G

[Android]Delphi/C++ Builder 开发 Android 程序启动画面简单完美解决方案

前面和音儿一起研究 Android 下启动画面的问题,虽然问题得到了解决,但是,总是感觉太麻烦,主要的问题: 1、需要手工去修改XML文件; 2、而且需要对系统本身做出修改; 3、方案还不够完善,需要较多的步骤; 现在,经常不断的折腾,终于找到了一个相对简单的解决方案: 1、先创建一个470×320像素的空白

[杂谈] 一个整数转其二进制表示的小函数

应群友的要求写的一个小函数,将一个32位整数转换为其二进制表示:

至于调用方式,则很简单,直接象 IntToBinStr(100) 就可以。如果想要前面保留多少个0,那你在长度上在前面加上n个0就好了。

[教程] QPlugins 插件引擎教程 – 让 QPlugins 协助你解耦程序

程序就是一堆面条,理顺了,好用又好看,如果缠在一起,那就会煮成一坨面疙瘩了。QPlugins 虽然是一个插件引擎,但是记住我们的理念,插件即服务,服务也就是插件一种插接方式。 首先,我们了解的第一个基于 QPlugins 的 Demo 位于 DockForms 里的 InProcess 目录下。它的目标是将不同单元的窗

[FMX] 步步惊心 – FMX Canvas 研究笔记

【注】下面的内容,仅适用于 Delphi/C++ Builder X,至于其它版本,不做任何保证。 研究一个新的东西,难免会将老的观念带进来,也难免会遇到不同的坑,有些坑是自己挖的,有些坑是厂商或作者挖的,一路走来,堪称步步惊心。FMX 目前来说,改进很大,但坑仍然还有很多,慢慢研究,慢慢摸索,希望与大家一同进步。 1

[QJSON] 更新:保存 JSON 中的注释

QJSON 新版中增加了对注释保存的支持,早先版本的 QJSON 对于注释会自动跳过,不会保存注释的内容。但这一功能在 StrictJson 为 true 时不会支持,以兼容更多的解析器。 QJSON 中,注释的保存通过 CommentStyle 属性来控制: jcsIgnore : 忽略掉注释,保存时不会保存注释的内