メインコンテンツへスキップ

Keyboard

Keyboard は、仮想キーボードを管理するための API を提供します。高レベル API は Keyboard.TypeAsync() で、これは生の文字を受け取り、ページ上で適切な keydownkeypress/input、および keyup イベントを生成します。

より細かく制御するには、Keyboard.DownAsync()Keyboard.UpAsync()、および Keyboard.InsertTextAsync() を使用して、実際のキーボードから生成されたかのように手動でイベントを発行できます。

Shift キーを押しながらテキストを選択して削除する例

await page.Keyboard.TypeAsync("Hello World!");
await page.Keyboard.PressAsync("ArrowLeft");

await page.Keyboard.DownAsync("Shift");
for (int i = 0; i < " World".Length; i++)
await page.Keyboard.PressAsync("ArrowLeft");

await page.Keyboard.UpAsync("Shift");

await page.Keyboard.PressAsync("Backspace");
// Result text will end up saying "Hello!"

大文字の A を押す例

await page.Keyboard.PressAsync("Shift+KeyA");
// or
await page.Keyboard.PressAsync("Shift+A");

キーボードで全選択をトリガーする例

await page.Keyboard.PressAsync("ControlOrMeta+A");

メソッド

DownAsync

v1.9 より前に追加 keyboard.DownAsync

keydown イベントを発行します。

key は、意図する keyboardEvent.key の値、またはテキストを生成する単一の文字を指定できます。key 値のスーパーセットは、こちら にあります。キーの例を以下に示します。

F1 - F12Digit0- Digit9KeyA- KeyZBackquoteMinusEqualBackslashBackspaceTabDeleteEscapeArrowDownEndEnterHomeInsertPageDownPageUpArrowRightArrowUp など。

以下の修飾キーショートカットもサポートされています。ShiftControlAltMetaShiftLeftControlOrMetaControlOrMeta は、Windows および Linux では Control に、macOS では Meta に解決されます。

Shift キーを押しながらにすると、key に対応するテキストが大文字で入力されます。

key が単一の文字の場合、大文字と小文字が区別されます。したがって、aA の値は、それぞれ異なるテキストを生成します。

key が修飾キー (ShiftMetaControl、または Alt) の場合、後続のキー入力は、その修飾キーがアクティブな状態で送信されます。修飾キーを解放するには、Keyboard.UpAsync() を使用します。

キーが一度押されると、Keyboard.DownAsync() を後続で呼び出すと、repeat が true に設定されます。キーを解放するには、Keyboard.UpAsync() を使用します。

注意

修飾キーは keyboard.down に影響を与えます。Shift キーを押しながらにすると、テキストが大文字で入力されます。

使用例

await Keyboard.DownAsync(key);

引数

  • key string#

    押すキーの名前、または生成する文字 (ArrowLefta など)。

戻り値


InsertTextAsync

v1.9 より前に追加 keyboard.InsertTextAsync

input イベントのみを発行し、keydownkeyup、または keypress イベントは発行しません。

使用例

await page.Keyboard.PressAsync("嗨");
注意

修飾キーは keyboard.insertText に影響を与えません。Shift キーを押しながらにしても、テキストは大文字で入力されません。

引数

  • text string#

    入力を指定されたテキスト値に設定します。

戻り値


PressAsync

v1.9 より前に追加 keyboard.PressAsync
ヒント

ほとんどの場合、代わりに Locator.PressAsync() を使用する必要があります。

key は、意図する keyboardEvent.key の値、またはテキストを生成する単一の文字を指定できます。key 値のスーパーセットは、こちら にあります。キーの例を以下に示します。

F1 - F12Digit0- Digit9KeyA- KeyZBackquoteMinusEqualBackslashBackspaceTabDeleteEscapeArrowDownEndEnterHomeInsertPageDownPageUpArrowRightArrowUp など。

以下の修飾キーショートカットもサポートされています。ShiftControlAltMetaShiftLeftControlOrMetaControlOrMeta は、Windows および Linux では Control に、macOS では Meta に解決されます。

Shift キーを押しながらにすると、key に対応するテキストが大文字で入力されます。

key が単一の文字の場合、大文字と小文字が区別されます。したがって、aA の値は、それぞれ異なるテキストを生成します。

key: "Control+o"key: "Control++"、または key: "Control+Shift+T" などのショートカットもサポートされています。修飾キーを指定すると、後続のキーが押されている間、修飾キーが押されたままになります。

使用例

await page.GotoAsync("https://keycode.info");
await page.Keyboard.PressAsync("A");
await page.ScreenshotAsync(new() { Path = "A.png" });
await page.Keyboard.PressAsync("ArrowLeft");
await page.ScreenshotAsync(new() { Path = "ArrowLeft.png" });
await page.Keyboard.PressAsync("Shift+O");
await page.ScreenshotAsync(new() { Path = "O.png" });
await browser.CloseAsync();

Keyboard.DownAsync() および Keyboard.UpAsync() のショートカット。

引数

  • key string#

    押すキーの名前、または生成する文字 (ArrowLefta など)。

  • options KeyboardPressOptions? (オプション)

    • Delay [float]? (オプション)#

      keydownkeyup の間の待ち時間 (ミリ秒単位)。デフォルトは 0 です。

戻り値


TypeAsync

v1.9 より前に追加 keyboard.TypeAsync
注意

ほとんどの場合、代わりに Locator.FillAsync() を使用する必要があります。ページに特別なキーボード処理がある場合にのみ、キーを 1 つずつ押す必要があります。その場合は、Locator.PressSequentiallyAsync() を使用してください。

テキスト内の各文字に対して、keydownkeypress/input、および keyup イベントを送信します。

ControlArrowDown などの特殊キーを押すには、Keyboard.PressAsync() を使用します。

使用例

await page.Keyboard.TypeAsync("Hello"); // types instantly
await page.Keyboard.TypeAsync("World", new() { Delay = 100 }); // types slower, like a user
注意

修飾キーは keyboard.type に影響を与えません。Shift キーを押しながらにしても、テキストは大文字で入力されません。

注意

US キーボードにない文字の場合、input イベントのみが送信されます。

引数

  • text string#

    フォーカスされた要素に入力するテキスト。

  • options KeyboardTypeOptions? (オプション)

    • Delay [float]? (オプション)#

      キー入力間の待ち時間 (ミリ秒単位)。デフォルトは 0 です。

戻り値


UpAsync

v1.9 より前に追加 keyboard.UpAsync

keyup イベントを発行します。

使用例

await Keyboard.UpAsync(key);

引数

  • key string#

    押すキーの名前、または生成する文字 (ArrowLefta など)。

戻り値