zoukankan      html  css  js  c++  java
  • 在你的跨平台应用中使用剪贴板进行复制粘贴

    [FMX]在你的跨平台应用中使用剪贴板进行复制粘贴

    VCL 中如何使用剪贴板咱就不说了,FMX 做为一个新的框架,提供了跨平台的剪贴板支持。FMX 对剪贴板的支持来自两个接口:

    • IFMXClipboardService:位于 FMX.Platform.pas 中
    • IFMXExtendedClipboardService:位于 FMX.Clipboard.pas 中

    很明显,第二种更符合VCL中TClipboard的使用习惯。而且如果要使用自定义格式的内容,则必需使用第二种格式,第一种格式的支持情况如下(以10.2 为准,未来版本请自行查看):

    1. Windows 平台(FMX.Clipboard.Win.pas):文本、位图
    2. Android 平台(FMX.Clipboard.Android.pas):文本
    3. iOS 平台(FMX.Clipboard.iOS.pas):文本、位图
    4. OSX 平台(FMX.Clipboard.Mac.pas):文本、位图

    注意一下,支持位图的平台,实际上 TValue 支持的是 TBitmapSurface,当然设置值时也支持 TBitmap ,但 GetClipboard 返回的就只是 TBitmapSurface 类型的对象了。

    好了,回归正转,说一下基本的使用步骤:

    1. 引用 fmx.platform 单元,如果使用第二个接口,同时使用 fmx.clipboard 单元。
    2. 用  TPlatformServices.Current.SupportsPlatformService 函数来获取剪贴板服务接口实例。
    3. 调用获取的接口实例的相关函数来执行相关的功能。

    一个简单的示例:

    至于其它的几个接口,大家看相关接口的帮助就可以了。

  • 相关阅读:
    替代或者与 Redis 配合存储十亿级别列表的数据.
    Python中高层次的数据结构,动态类型和动态绑定,使得它非常适合于快速应用开发,也适合于作为胶水语言连接已有的软件部件。
    伪类 伪元素
    模块与你的主业务代码是应该解耦的
    MarkdownPad
    长度区间校验公共方法,引入棉花糖
    不可见字符
    eval is not a function
    for (const k in v){ 变量作用域
    爬虫站点的历史入库数据,对入库数据的无外网处理,幂等操作;反之,不幂等操作
  • 原文地址:https://www.cnblogs.com/westsoft/p/8975855.html
Copyright © 2011-2022 走看看