TranslateKey
TranslateKey
現在の入力言語と制御キーの状態を考慮して、仮想キーコードによってUnicode文字を返します。
関数書式:
short TranslateKey(
int key_code
);
■引数
引数名 |
初期値 |
I/O |
詳細 |
key_code |
- |
In |
Unicode文字変換するキーコード
|
■戻り値
変換が成功した場合のUnicode文字を返し、エラーの場合は-1を返します。
■備考
この関数は、
Win32 APIのToUnicodeEx()を使用して、ユーザーが押したキーをUnicode文字に変換します。
ToUnicodeEx()がトリガーされない(たとえばSHIFTキー等を渡した)場合エラーが発生する場合があります。
サンプルソース:
void OnChartEvent(const int id,const long& lparam,const double& dparam,const string& sparam)
{
if ( id == CHARTEVENT_KEYDOWN ) {
short temp_unicode = TranslateKey( (int)lparam );
if ( temp_unicode > 0 ) {
printf( "変換成功。押されたキー:%c 押されたキーコード:0x%x 変換したコード0x%x"
, lparam ,lparam , temp_unicode );
} else {
printf( "変換失敗。押されたキー:%c 押されたキーコード:0x%x" , lparam , lparam );
}
}
}
結果:
変換成功。押されたキー:A 押されたキーコード:0x41 変換したコード0x61
変換成功。押されたキー:S 押されたキーコード:0x53 変換したコード0x73
変換成功。押されたキー:D 押されたキーコード:0x44 変換したコード0x64
変換成功。押されたキー:F 押されたキーコード:0x46 変換したコード0x66
変換失敗。押されたキー:(Shiftキー) 押されたキーコード:0x10
変換失敗。押されたキー:%(左矢印キー) 押されたキーコード:0x25
変換失敗。押されたキー:'(右矢印キー) 押されたキーコード:0x27
スポンサーリンク
注意事項:
当サイトはMQL4言語(MT4用プログラム言語)について紹介している初心者向けサイトです。
自動売買を行うEAや売買シグナルのソフトウェアの配布などは行っておりません。
投資助言も行っておりません、投資助言を必要としている方は投資助言業者に相談して下さい。
当サイトに掲載している情報やサンプルソース利用によって損害が生じてもサイト管理人は責任を負いませんので、全て自己責任でお願い致します。
また当サイトではFXCM MT4ベースに紹介していますが、これはFXCMを特別お勧めしているわけでは無く、単純に管理人がFXCM口座をメインに取引をしていた為です。尚、FXCMジャパン証券は楽天証券に買収されました。
FX(外国為替保証金取引)は金融商品取引法に規定される通貨関連店頭デリバティブ取引です。
元本あるいは利益を保証した金融商品ではありません。
為替変動・金利変動・アルゴリズムによる急変動・各国要人の気まぐれ発言による暴落等のリスクにより、損失が生じるおそれがあります。
FXは少ない保証金を担保として大きな金額を取引出来る為、投資金額以上の損失を被る可能性があります。
詳細は証券会社の契約締結前交付書面・約款等を熟読して下さい。