1# @ohos.application.WindowExtensionAbility (窗口扩展能力)(系统接口) 2 3WindowExtensionAbility基于ExtensionAbility。WindowExtensionAbility中展示的内容可作为一个控件(AbilityComponent)内容展示在其他应用窗口中。 4 5> **说明:** 6> 7> - 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> 9> - 本模块接口为系统接口。 10> 11> - 本模块接口仅可在Stage模型下使用。 12 13## 导入模块 14 15```ts 16import { WindowExtensionAbility } from '@kit.ArkUI'; 17``` 18 19## 属性 20 21**系统能力:** SystemCapability.WindowManager.WindowManager.Core 22 23| 名称 | 类型 | 可读 | 可写 | 说明 | 24| --------- | -------- | ---- | ---- | ------------------------- | 25| context | [WindowExtensionContext](js-apis-inner-application-windowExtensionContext-sys.md) | 是 | 否 | 上下文。 | 26 27## WindowExtensionAbility.onConnect 28 29onConnect(want: Want): void 30 31当窗口扩展组件第一次连接ability时回调。 32 33**系统能力:** SystemCapability.WindowManager.WindowManager.Core 34 35**参数:** 36 37| 参数名 | 类型 | 必填 | 说明 | 38| -------- | -------- | -------- | -------- | 39| want | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 当前ability的Want类型信息,包括ability名称、bundle名称等。 | 40 41**示例:** 42 43```ts 44import { WindowExtensionAbility } from '@kit.ArkUI'; 45import { Want } from '@kit.AbilityKit'; 46 47export default class MyWindowExtensionAbility extends WindowExtensionAbility { 48 onConnect(want: Want) { 49 console.info('WindowExtAbility onConnect, abilityName: ${want.abilityName}'); 50 } 51} 52``` 53 54## WindowExtensionAbility.onDisconnect 55 56onDisconnect(want: Want): void 57 58当所有连接到窗口扩展组件的ability断开连接时回调。 59 60**系统能力:** SystemCapability.WindowManager.WindowManager.Core 61 62**参数:** 63 64| 参数名 | 类型 | 必填 | 说明 | 65| -------- | -------- | -------- | -------- | 66| want | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 当前Ability的Want类型信息,包括ability名称、bundle名称等。 | 67 68 69**示例:** 70 71```ts 72import { WindowExtensionAbility } from '@kit.ArkUI'; 73import { Want } from '@kit.AbilityKit'; 74 75export default class MyWindowExtensionAbility extends WindowExtensionAbility { 76 onDisconnect(want: Want) { 77 console.info('WindowExtAbility onDisconnect, abilityName: ${want.abilityName}'); 78 } 79} 80``` 81 82## WindowExtensionAbility.onWindowReady 83 84onWindowReady(window: window.Window): void 85 86当窗口被创建时回调。 87 88**系统能力:** SystemCapability.WindowManager.WindowManager.Core 89 90**参数:** 91 92| 参数名 | 类型 | 必填 | 说明 | 93| -------- | -------- | -------- | -------- | 94| window | [window.Window](js-apis-window.md#window) | 是 | 当前窗口实例。 | 95 96 97**示例:** 98 99```ts 100import { WindowExtensionAbility, window } from '@kit.ArkUI'; 101import { BusinessError } from '@kit.BasicServicesKit'; 102 103export default class MyWindowExtensionAbility extends WindowExtensionAbility { 104 onWindowReady(window: window.Window) { 105 window.setUIContent('WindowExtAbility/pages/index1',(err:BusinessError) => { 106 let pro = window.getWindowProperties(); 107 console.log('WindowExtension pro: ${JSON.stringify(pro)}'); 108 window.showWindow(); 109 }); 110 } 111} 112```