1# PasteButton 2 3 4安全控件的粘贴按钮,用户通过点击该粘贴按钮,可以临时获取读取剪贴板权限,而不会触发toast提示。 5 6 7> **说明:** 8> 9> 该组件从API Version 10开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 10 11 12## 子组件 13 14不支持。 15 16 17## 接口 18### PasteButton 19PasteButton() 20 21默认创建带有图标、文本、背景的粘贴按钮。 22 23### PasteButton 24PasteButton(option:{icon?: PasteIconStyle, text?: PasteDescription, buttonType?: ButtonType}) 25 26创建包含指定元素的粘贴按钮。 27 28**参数:** 29 30| 参数名 | 参数类型 | 必填 | 参数描述 | 31| -------- | -------- | -------- | -------- | 32| icon | [PasteIconStyle](#pasteiconstyle枚举说明) | 否 | 设置粘贴按钮的图标风格。<br/>不传入该参数表示没有图标,icon和text至少存在一个。 | 33| text | [PasteDescription](#pastedescription枚举说明) | 否 | 设置粘贴按钮的文本描述。<br/>不传入该参数表示没有文字描述,icon和text至少存在一个。 | 34| buttonType | [ButtonType](ts-basic-components-button.md#buttontype枚举说明) | 否 | 设置粘贴按钮的背景样式。<br/>不传入该参数表示没有背景。 | 35 36 37## 属性 38 39不支持通用属性,仅继承[安全控件通用属性](ts-securitycomponent-attributes.md#属性)。 40 41 42## PasteIconStyle枚举说明 43 44| 名称 | 枚举值 | 描述 | 45| -------- | -------- | -------- | 46| LINES | 0 | 粘贴按钮展示线条样式图标。 | 47 48 49## PasteDescription枚举说明 50 51| 名称 | 枚举值 | 描述 | 52| -------- | -------- | -------- | 53| PASTE | 0 | 粘贴按钮的文字描述为“粘贴”。 | 54 55 56## PasteButtonOnClickResult枚举说明 57 58| 名称 | 枚举值 | 描述 | 59| -------- | -------- | -------- | 60| SUCCESS | 0 | 粘贴按钮点击成功。 | 61| TEMPORARY_AUTHORIZATION_FAILED | 1 | 粘贴按钮点击后权限授权失败。 | 62 63 64## 事件 65 66不支持通用事件,仅支持以下事件: 67 68| 名称 | 功能描述 | 69| -------- | -------- | 70| onClick(event: (event: [ClickEvent](ts-universal-events-click.md#clickevent对象说明), result: [PasteButtonOnClickResult](#pastebuttononclickresult枚举说明)) => void) | 点击动作触发该回调。<br/>result:剪贴板权限的授权结果,授权后可以读取当前剪贴板内容。<br/>event:见ClickEvent对象说明。 | 71 72 73## 示例 74 75``` 76// xxx.ets 77@Entry 78@Component 79struct Index { 80 build() { 81 Row() { 82 Column({space:10}) { 83 // 默认参数下,图标、文字、背景都存在 84 PasteButton().onClick((event: ClickEvent, result: PasteButtonOnClickResult)=>{ 85 console.info("result " + result) 86 }) 87 // 传入参数即表示元素存在,不传入的参数表示元素不存在,例如:只显示图标 88 PasteButton({icon:PasteIconStyle.LINES}) 89 // 只显示图标+背景 90 PasteButton({icon:PasteIconStyle.LINES, buttonType:ButtonType.Capsule}) 91 // 图标、文字、背景都存在 92 PasteButton({icon:PasteIconStyle.LINES, text:PasteDescription.PASTE, buttonType:ButtonType.Capsule}) 93 }.width('100%') 94 }.height('100%') 95 } 96} 97``` 98 99 100