C++Builder初心者です。
http://madia.world.coocan.jp/delphi/Win32API/MouseCap.htm
をc++Builderに変換したいのですがうまくいきません。
どのように書いたらようのでしょうか。
ご教授いただけたら幸いです。
所々日本語の打ち間違えがあり、読みづらくてすみません(ノ_・。)
宜しくお願い致します。
直訳するとこんな感じかな。
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
//画像を削除
Image1->Picture = NULL;
//マウスカーソルの現在座標を取得する
TPoint Poi;
GetCursorPos(&Poi);
//マウス入力を受け持っているウインドウのハンドルを取得
HWND hWnd = GetCapture();
//デバイスコンテキストのハンドルを取得する
HDC DC = GetWindowDC(hWnd);
//マウスカーソルの位置の画像をImage2に転送する(転送する幅は各自で変更してください)
BitBlt(Image2->Canvas->Handle, 0, 0, Width, Height, DC, Poi.x - 55, Poi.y - 45, SRCCOPY);
//Image2の画像を拡大してImage1に転送する
StretchBlt(Image1->Canvas->Handle, 0, 0, Image1->Width, Image1->Height, Image2->Canvas->Handle, 0, 0, Image2->Width, Image2->Height, SRCCOPY);
//画像を削除
Image2->Picture = NULL;
//デバイス コンテキストを解放する(これをしないとどんどん蓄積される)
ReleaseDC(Form1->Handle, DC);
}
山本さんありがとうございます!!
コンパイルをすることができたのですが、マウスカーソル付近は拡大されません。。。。(ノ_-。)
もしわかりましたら教えてください(・Θ・;)
ソースコード一式をアップしました。
http://www.gesource.jp/weblog/wp-content/uploads/2011/10/mouse_sample.zip
お手元のコードと比較してみてください。
できました!(。^□^。)
ありがとうございました!(≧∇≦)
ツイート | ![]() |