PDA

View Full Version : مبتدی: کنترل کردن ماوس



delphitor
شنبه 20 شهریور 1389, 14:01 عصر
سلام خدمت مهندسین عزیز:
در دلفی 7 می توان ماوس را درمحدوده خاصی از برنامه و یا روی بعضی از آبجکتها غیر فعال کرد که کاربر نتواند با ماوس تاثیری در آن مکانها بگذارد؟

SAASTN
شنبه 20 شهریور 1389, 14:41 عصر
به نظر میاد این تعریف همون False کردن Enable کنترلی باشه که می خواین موس روش کار نکنه. اما شاید بخواین Keyboard کار کنه؟

delphitor
شنبه 20 شهریور 1389, 15:21 عصر
منظورم این بود که فقط ماوس کار نکنه و کیبورد دیتا وارد کنه وگرنه false کردنو که دیگه همه بلدن!

SAASTN
شنبه 20 شهریور 1389, 17:57 عصر
منظورم این بود که فقط ماوس کار نکنه و کیبورد دیتا وارد کنه وگرنه false کردنو که دیگه همه بلدن!
والا چی بگم، منم اولا همینطور فکر می کردم ولی کم کم دارم اطمینانمو از دست می دم!
ببین این کارتو راه می ندازه:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Memo1: TMemo;
procedure FormCreate(Sender: TObject);
private
procedure ApplicationOnMessage(var Msg: TMsg; var Handled: Boolean);
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.ApplicationOnMessage(var Msg: TMsg; var Handled: Boolean);
begin
if (Msg.hwnd = Memo1.Handle) then
case Msg.message of
WM_MOUSEFIRST..WM_MOUSELAST: Handled := True;
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnMessage := ApplicationOnMessage;
end;

end.

delphitor
دوشنبه 22 شهریور 1389, 17:36 عصر
خیلی ممنون SAASTN کدی که نوشتی عمل کرد!
:چشمک: