نمایش نتایج 1 تا 16 از 16

نام تاپیک: تشخیص این که موس کجا و روی چه شیئی حرکت می کند؟

  1. #1
    کاربر دائمی
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    آنجا سرای ابدی است
    پست
    2,011

    تشخیص این که موس کجا و روی چه شیئی حرکت می کند؟

    آیا کسی راهی بلده که بتونیم با اون شیئی که موس روی اون حرکت می کنه را تشخیص داد و عنوان یا متن اون شی را خوند.لازم به ذکره که شی مورد نظر لزوما درون برنامه ی خودمان نیست.


    همیشه گروهی کار کنیم
    تا به نتیجه برسیم.

  2. #2
    کاربر دائمی آواتار Arash_j13
    تاریخ عضویت
    آذر 1383
    محل زندگی
    مشهد
    پست
    114
    با توابع Windows API می شه
    با کمک GetCursorPos مکان فعلی آشاره گر رو بدست بیارید بعد به کمک WindowFromPoint هندل پنجره ای که اشاره گر ماوس برش قرار داره رو پیدا کنید بعد با داشتن هندل هر کاری می تونید بکنید مثلا با GetWindowText متن پنجره رو بخونید

  3. #3
    کاربر دائمی
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    آنجا سرای ابدی است
    پست
    2,011
    خوب امما با دانستن هندل می شه متن موجود بر روی دکمه را نیز خواند؟
    چه گونه؟

  4. #4
    کاربر تازه وارد آواتار delphi.net8
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    مازندران-بهشهر
    پست
    63
    windows.getWindowText(windows.FindWindowEx(findwin dow('shell_traywnd',nil),0,'button',0))
    اینطوری میشه مثلا متن روی دکمه استارت رو خوند

    امما منم یه سوال داشتم : فرض بگیریم دوتا دکمه داشته باشیم ! هندل دکمه دوم رو چطور بدست بیاریم؟

  5. #5
    به نام خدای مهدی
    با سلام
    دوست عزیز روی یک تایمر بنویس
    procedure TForm1.Timer1Timer(Sender: TObject);
    Var p : TPoint;
    h : THandle;
    buf : Array[0..255] of Char;
    begin
    GetCursorPos(p);
    h := WindowFromPoint(p);
    SendMessage(h, WM_GETTEXT, 255, Integer(@Buf));
    Form1.Caption := Buf;
    end;

  6. #6
    اینم فایلش
    اگه فیل در هم بر هم باشه شرمند ه ام
    چون همین الان درست کردم
    فایل های ضمیمه فایل های ضمیمه
    • نوع فایل: rar m).rar‏ (5.6 کیلوبایت, 40 دیدار)

  7. #7
    کاربر دائمی
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    آنجا سرای ابدی است
    پست
    2,011
    ین فایلی که ÷یوست کرده اید اشیای خارجی را به درستی تشخیص نمی دهد

  8. #8
    کاربر دائمی
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    آنجا سرای ابدی است
    پست
    2,011
    یادتون نره مشکل هنوز حل نشده

  9. #9
    کاربر دائمی
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    آنجا سرای ابدی است
    پست
    2,011
    لطفا اگه کسی راهی به ذهنش می رسه بگذاره تا امتحان کنیم

  10. #10
    یادتون نره مشکل هنوز حل نشده
    یادتون نره که متن هر شی ایی رو نمیشه با GetWindowText خوند. دقیقا می خواید چیکار کنید؟

  11. #11
    کاربر دائمی
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    آنجا سرای ابدی است
    پست
    2,011
    فرض کنید پنجره ای باز است(یک نرم افزار دلخواه) من موس را روی دکمه ای از آن نگاه می دارم یا روی آن کلیک می کنم می خواهم برنامه ی من Caption آن دکمه را تشخیص دهد. یا حتی اگر درون عنصری شبیه Edit هستم متن نوشته شده درون آن را بخوانم.

  12. #12
    فرض کنید پنجره ای باز است(یک نرم افزار دلخواه) من موس را روی دکمه ای از آن نگاه می دارم یا روی آن کلیک می کنم می خواهم برنامه ی من Caption آن دکمه را تشخیص دهد. یا حتی اگر درون عنصری شبیه Edit هستم متن نوشته شده درون آن را بخوانم.
    برای این منظور از همون از GetWindowText یا از پیغام WM_GETTEXT استفاده کنید.

  13. #13
    کاربر دائمی
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    آنجا سرای ابدی است
    پست
    2,011
    البته کارهایی که قبلا توضیح داده شده بود ا انجام دادم ولی در خوندن تمام caption به درستی مشکل داشت. اگه حال دارید یک برنامه بگذارید.

  14. #14
    کاربر تازه وارد آواتار delphi.net8
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    مازندران-بهشهر
    پست
    63
    من یه سئوال دیگه هم تو همین مایه ها داشتم
    راستش یه برنامه ای هست که بصورت ران تایم ایمیج ایجاد میکنم
    تعداد ایمیج های ایجاد شده هم متغیره
    میخوام کاربر کلیک روی هر ایمیج بتونه اونو ذخیره کنه
    مشکل اینجاست که من اسم ایمیجی که کار بر روش کلیک کرده رو نمی دونم
    گفتم شاید با این windowfrom point بشه کاری کرد
    ضمنن برای نام امیج ها از ترکیب( image+inttostr(i استفاده کردم که i شمارنده حلقه است

  15. #15
    میخوام کاربر کلیک روی هر ایمیج بتونه اونو ذخیره کنه
    مشکل اینجاست که من اسم ایمیجی که کار بر روش کلیک کرده رو نمی دونم
    یک متد از نوع TNotifyEvent برای رویداد OnClick درست کنید :
     
    ...
    private
    procedure MyOnClick(Sender: TObject);
    ...

    در هنگام ساختن Image ها به OnClick اونها مقدار MyOnClick بدید:
     
    with MyImage.Create(Self) do
    begin
    ...
    OnClick := MyOnClick;
    ...
    end;
    در متد MyOnClick می تونید از کدی مثل کد زیر برای بدست آوردن نام یک کامپوننت استفاده کنید:

    procedure MyOnClick(Sender: TObject);
    begin
    ImageName := (Sender as TComponent).Name;
    end;
    آخرین ویرایش به وسیله vcldeveloper : جمعه 22 اردیبهشت 1385 در 05:50 صبح

  16. #16
    کاربر تازه وارد آواتار delphi.net8
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    مازندران-بهشهر
    پست
    63
    آقای کشاورز دستتون درد نکنه
    ممنون

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •