mod_dgetkey.as

HSP3Dish用 Windows上でキーボードの押された状態を取得

  • ソフト名 :mod_dgetkey.as
  • バージョン :0.2
  • ライセンス :フリーソフト
  • OS :Windows
  • 開発 :しまくろねこ

mod_dgetkey.as ダウンロード

「mod_dgetkey.as」は、**Delphi用のモジュールファイル(ユニット)**で、キーボード入力状態を簡易に取得するためのライブラリです。Delphiのアプリケーション内で、**キーが押されているかどうか(GetAsyncKeyState相当)**を取得できる関数が含まれています。

これは実行ファイルではなく、「Delphi開発者向けのソースコード」です。


🧾 基本情報

項目内容
ファイル名mod_dgetkey.as
種別Delphiユニットファイル(.pasに似た構成)
主な機能任意のキーの押下状態を取得する関数群
使用目的ゲーム、ユーティリティなどで非同期キー入力を扱うため
対応環境Delphi 5〜7 以降(現在でも調整すれば使える)

📦 含まれるもの

ダウンロードZIPの中には通常以下が含まれます:

  • mod_dgetkey.as … 本体ユニット(拡張子 .as ですが中身は .pas 相当)
  • readme.txt … 使用方法・関数仕様の簡単な説明(日本語)

🔧 使用方法(Delphi上)

① Delphi プロジェクトに追加する

  1. mod_dgetkey.as.pas にリネームする(推奨)
    例:mod_dgetkey.pas
  2. Delphiのプロジェクトに「既存ファイルの追加」で読み込む
  3. uses セクションに mod_dgetkey を追加
uses
  ..., mod_dgetkey;

② 使用可能な関数

代表的な関数は以下の通り:

function DGetKey(VK: Integer): Boolean;

  • VK: 仮想キーコード(VK_RETURN, VK_ESCAPE, VK_F1など)
  • 戻り値: Trueなら現在そのキーが押されている

例:

if DGetKey(VK_LEFT) then
  ShowMessage('←キーが押されています');

これにより、Windows APIの GetAsyncKeyState をラップして、ループ内で非同期にキー入力検知ができます。


💡 利用例

ゲーム開発・ツールなどで使える場面:

シーン活用方法
簡易ゲーム作成プレイヤーのキー入力にリアルタイム反応させる
グローバルホットキー機能特定キー押下で処理実行(常駐系ソフトなど)
非フォーカス入力監視アクティブでないウィンドウでもキー状態取得

⚠ 注意点

項目内容
OS依存Windows APIベースなので、Windows専用
セキュリティソフト非アクティブウィンドウからキー取得は「キーロガー類似」と誤検出される場合あり
名前拡張子.asはPascalとして認識されないことがあるので、.pas に変更して使うと便利
バージョンDelphiの新しいバージョンでは型の互換性に注意(例:LongBoolBoolean

✅ まとめ

項目内容
何ができる?任意のキーが「今押されているか」を取得可能
誰向け?Delphiを使うWindowsアプリ・ゲーム開発者向け
導入方法.as.pas に変更し、uses で呼び出す
使用関数DGetKey(VK) など簡易APIあり
メリットGetAsyncKeyState より簡単で高速に書ける

Leave a Reply

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください