系统剪切板功能的使用

系统剪切板功能的使用

HarmonyOS
2024-05-20 21:19:57
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
youganlan

剪贴板目前主要提供管理系统剪贴板的能力,为系统复制、粘贴功能提供支持。系统剪贴板支持对文本、HTML、URI、Want等内容的操作。

下面来示范如何调用系统剪贴板功能接口

1、导入pasteboard

import pasteboard from '@ohos.pasteboard';

2、获取系统剪切板实例

systemPasteboard = pasteboard.getSystemPasteboard();

3、通过on('update')方法可以订阅系统剪贴板内容变化事件,当系统剪贴板中内容变化时触发用户程序的回调。

onListenPasteboard() { 
  let listener = () => { 
    this.systemPasteboard.getData((err, pasteData) => { 
      if (err) { 
        console.error('Failed to get PasteData. Cause: ' + err.message); 
        return; 
      } 
    }); 
    console.info('The system pasteboard has changed.'); 
  }; 
  this.systemPasteboard.on('update', listener); 
}

4、通过off('update')方法可以取消订阅系统剪贴板内容变化事件。

offListenPasteboard() { 
  let listener = () => { 
    this.message = ''; 
    console.info('The system pasteboard has changed.'); 
  }; 
  this.systemPasteboard.off('update', listener); 
}

5、通过setData以及getData可从系统剪切板写入或者读取数据。

var pasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'Hello Pasteboard'); 
this.systemPasteboard.setData(pasteData, (err, data) => { 
  if (err) { 
    console.error('Failed to set PasteData. Cause: ' + err.message); 
    return; 
  } 
  console.info('Succeeded in setting PasteData.'); 
}); 
 
this.systemPasteboard.getData((err, pasteData) => { 
  if (err) { 
    console.error('Failed to get PasteData. Cause: ' + err.message); 
    return; 
  } 
  this.message = pasteData.getPrimaryText(); 
});

6、通过clearData方法可以清空系统剪贴板内容。

clearPasteboard() { 
  this.systemPasteboard.clearData((err, data) => { 
    if (err) { 
      console.error(`Failed to clear the pasteboard. Cause: ${err.message}`); 
      return; 
    } 
    console.info('Succeeded in clearing the pasteboard.'); 
  }); 
}
分享
微博
QQ
微信
回复
2024-05-21 17:14:52
相关问题
HarmonyOS 如何使用剪切板功能
71浏览 • 1回复 待解决
复制图片到剪切板并获取剪切板消息
782浏览 • 1回复 待解决
HarmonyOS 如何获取剪切板内容
413浏览 • 1回复 待解决
HarmonyOS 获取当前剪切板数据值
33浏览 • 1回复 待解决
HarmonyOS PAD上从剪切板获取数据失败
58浏览 • 1回复 待解决
HarmonyOS 怎么把内容复制到剪切板
532浏览 • 1回复 待解决
是否支持在应用后台获取剪切板数据
461浏览 • 1回复 待解决
JS FA调用 java PA,取到参数剪切板问题
5216浏览 • 1回复 待解决
如何将一段文字保存到剪切板中?
348浏览 • 1回复 待解决
Hi3861开发mesh功能
14427浏览 • 4回复 待解决
3516开发使用编译使用mqtt?
8371浏览 • 2回复 待解决
使用功能系统后,截屏有白线
6742浏览 • 2回复 待解决
DOPI Hi3516EV200开发无法刷鸿蒙系统
9468浏览 • 3回复 待解决