DelphiからC++Builderにへんかんするのは?


nico  2011-10-27 17:50:56  No: 41121  IP: 192.*.*.*

C++Builder初心者です。
http://madia.world.coocan.jp/delphi/Win32API/MouseCap.htm
をc++Builderに変換したいのですがうまくいきません。
どのように書いたらようのでしょうか。
ご教授いただけたら幸いです。

編集 削除
nico  2011-10-27 17:57:40  No: 41122  IP: 192.*.*.*

所々日本語の打ち間違えがあり、読みづらくてすみません(ノ_・。)
宜しくお願い致します。

編集 削除
山本隆  2011-10-30 18:46:43  No: 41123  IP: 192.*.*.*

直訳するとこんな感じかな。

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);
}

編集 削除
nico  2011-10-31 13:02:01  No: 41124  IP: 192.*.*.*

山本さんありがとうございます!!
コンパイルをすることができたのですが、マウスカーソル付近は拡大されません。。。。(ノ_-。)
もしわかりましたら教えてください(・Θ・;)

編集 削除
山本隆  URL  2011-10-31 22:10:54  No: 41125  IP: 192.*.*.*

ソースコード一式をアップしました。
http://www.gesource.jp/weblog/wp-content/uploads/2011/10/mouse_sample.zip
お手元のコードと比較してみてください。

編集 削除
nico  2011-11-02 10:50:00  No: 41126  IP: 192.*.*.*

できました!(。^□^。)
ありがとうございました!(≧∇≦)

編集 削除