# 事件(Sub)

事件对象

### 属性列表

|属性|说明|
|-|-|
|[CurrentPageChange](#currentpagechange)|监听当前页改变事件|
|[EndPlay](#endplay)|监听退出播放事件。|
|[PicSelectionChange](#picselectionchange)|图片选区变更|
|[Scroll](#scroll)|监听滚动事件。|
|[StartPlay](#startplay)|监听进入播放事件。|
|[TextSelectChange](#textselectchange)|文本选区变更|
|[ZoomUpdated](#zoomupdated)|监听缩放事件。|

## CurrentPageChange

监听当前页改变事件

### 语法

`表达式.Sub.CurrentPageChange = eventHandle`

表达式：文档类型应用对象

### 示例

```js
//@file=base.pdf
async function example() {
  await instance.ready()

  const app = instance.Application

  // 监听当前页改变事件
  app.Sub.CurrentPageChange = async curryPage => {
    console.log('切换到：', curryPage)
  }
}
```

## EndPlay

监听退出播放事件。

### 语法

`表达式.Sub.EndPlay = eventHandle`

表达式：文档类型应用对象

### 示例

```js
//@file=base.pdf
async function example() {
  await instance.ready()

  const app = instance.Application

  // ActivePDF
  const pdf = await app.ActivePDF
  pdf.PlayMode = 'start'

  // 监听退出播放事件
  app.Sub.EndPlay = e => {
    console.log('EndPlay', e)
  }

  // 退出播放
  setTimeout(() => {
    pdf.PlayMode = false
  }, 2000)
}
```

## PicSelectionChange

图片选区变更

### 语法

`表达式.Sub.PicSelectionChange = eventHandle`

表达式：文档类型应用对象

### 示例

```js
//@file=base.pdf
async function example() {
  await instance.ready()

  const app = instance.Application

  // ActivePDF
  const pdf = await app.ActivePDF

  // 图片选区变更
  app.Sub.PicSelectionChange = e => {
    console.log('PicSelectionChange', e)
  }
}
```

## Scroll

监听滚动事件。

### 语法

`表达式.Sub.Scroll = eventHandle`

表达式：文档类型应用对象

### 示例

```js
//@file=base.pdf
async function example() {
  await instance.ready()

  const app = instance.Application

  // ActivePDF
  const pdf = await app.ActivePDF

  // 监听滚动事件
  app.Sub.Scroll = e => {
    console.log('Scroll', e)
  }

  // 设置滚动条位置
  setTimeout(async () => {
    await pdf.ScrollTo(100, 200)
  }, 2000)
}
```

## StartPlay

监听进入播放事件。

### 语法

`表达式.Sub.StartPlay = eventHandle`

表达式：文档类型应用对象

### 示例

```js
//@file=base.pdf
async function example() {
  await instance.ready()

  const app = instance.Application

  // ActivePDF
  const pdf = await app.ActivePDF

  // 监听进入播放事件
  app.Sub.StartPlay = e => {
    console.log('StartPlay', e)
  }

  // 进入播放
  setTimeout(() => {
    pdf.PlayMode = 'start'
  }, 2000)
}
```

## TextSelectChange

文本选区变更

### 语法

`表达式.Sub.TextSelectChange = eventHandle`

表达式：文档类型应用对象

### 示例

```js
//@file=base.pdf
async function example() {
  await instance.ready()

  const app = instance.Application

  // ActivePDF
  const pdf = await app.ActivePDF

  // 文本选区变更
  app.Sub.TextSelectChange = e => {
    console.log('TextSelectChange', e)
  }
}
```

## ZoomUpdated

监听缩放事件。

### 语法

`表达式.Sub.ZoomUpdated = eventHandle`

表达式：文档类型应用对象

### 示例

```js
//@file=base.pdf
async function example() {
  await instance.ready()

  const app = instance.Application

  // ActivePDF
  const pdf = await app.ActivePDF

  // 监听缩放事件
  app.Sub.ZoomUpdated = e => {
    console.log('ZoomUpdated', e)
  }

  // 设置缩放比例
  setTimeout(() => {
    pdf.Zoom = 150
  }, 2000)
}
```
