マウスで画像を動かす際のちらつきをなくすには

解決


ゆたっぴー  2011-04-08 08:24:38  No: 40444  IP: [192.*.*.*]

過去ログ等を参考にしてマウスクリックした時にマウス下にある画像を以下のような方法で動かしています
動かすことには成功したのですが、どうしても動かしている最中に画像がちらついてしまって困っています
ちらつくと言うよりは、横に縞が入ってしまって後ろにあるフォームの色が見えてしまっている感じです

private
    { Private 宣言 }
  Orgpoint : Tpoint;
  Drawing :  Boolean;

procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Drawing := true;
  Orgpoint := point(x,y);
end;

procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
Var
   P : TPoint;
begin
  If Drawing then begin
     P := Image1.Parent.ScreenToClient(Image1.ClientToScreen(Point(X, Y)));
     Image1.Left := P.X - Orgpoint.x;
     Image1.Top := P.Y - Orgpoint.y;
  end;
end;
 
procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 Drawing := False;
end;

環境はDelphi7 Professional
WindowsXp Home SP3
です。
スパイダソリティアが大好きで、トランプのマークや使用する組数を色々カスタマイズできるものを作りたいと思っています
ですが、最初のテスト段階でつまづいてしまい、困ってます。
どうぞよろしくお願い致します

編集 削除
3K  2011-04-08 10:29:16  No: 40445  IP: [192.*.*.*]

DoubleBufferedで検索を

編集 削除
ゆたっぴー  2011-04-08 11:22:44  No: 40446  IP: [192.*.*.*]

3Kさん どうもありがとうございました

ご指摘の検索でうまくいきました!
まだまだ検索力不足でお手数をお掛けし申し訳ありませんでした

編集 削除
ゆたっぴー  2011-04-08 11:23:32  No: 40447  IP: [192.*.*.*]

解決押し忘れました
どうもありがとうございました

編集 削除