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

نام تاپیک: چطور می تونم متن یک کادر جستجو رو در برنامه دیگه دستکاری کنم؟

  1. #1
    کاربر دائمی آواتار mbshareat
    تاریخ عضویت
    آبان 1387
    محل زندگی
    شهر مقدس قم-چهارمردان-کوچه 37
    پست
    963

    چطور می تونم متن یک کادر جستجو رو در برنامه دیگه دستکاری کنم؟

    سلام و خدا قوت
    من یه برنامه دارم که تکه هایی از متن کتاب رو لیست می کنه و یک برنامه کاری هم به ما داند که با اون می تونیم متن رو جستجو بدیم و ببینیم متن در قرآن کریم اومده یا نه؟
    می خوام به کامپوننتی از نوع CCSuperEdit !!! که جستجو رو انجام میده متن رو ارسال کنم با SendMessage و WM_SetText نتونستم متن داخل کادر جستجو رو عوض کنم چون ربطی به محتوای کادر جستجو نداره.
    با WM_Char تونستم عمل BackSpace رو شبیه سازی کنم ولی برنامم ندونه چقدر باید حرف به حرف محتوای کادر جستجو رو پاک کنه چندان به درد نمی خوره.
    حالا سوال من اینه که چطور می تونم به ترتیب فشار این کلیدها رو به کادر جستجوی برنامه قرآن ارسال کنم؟:
    Home
    Shift+End
    Delete یا BackSpace

    البته من که چشم آب نمی خوره بشه از WM_KeyDown استفاده کرد چون من سعی کردم 'A' رو بهش ارسال کنم اتفاقی نیفتاد.
    چطور می تونم بفهمم که پیامهایی که در یونیت Messages لیست شده چطور استفاده کنم؟
    اگه بشه من می خوام Position یک TrackBar رو هم تو یه برنامه دیگه دستکاری کنم.
    (الآن با ارسال پیغام فشار کلید راست و یا چپ می تونم ولی روش خنده داریه!!)
    اگه ممکنه یه نگاهی به این برنامه بیندارین:(اصل برنامه مال برادر مجتبی تاجیکه!)

    SendMessage.rar

  2. #2
    کاربر دائمی آواتار mbshareat
    تاریخ عضویت
    آبان 1387
    محل زندگی
    شهر مقدس قم-چهارمردان-کوچه 37
    پست
    963

    نقل قول: چطور می تونم متن یک کادر جستجو رو در برنامه دیگه دستکاری کنم؟

    سلام
    بعد از کلی جستجو یه چنین کدی پیدا کردم:
      keybd_event(VK_SHIFT, 0, 0, 0);
    PostMessage(EditHand,WM_KeyDown,36,0);
    PostMessage(EditHand,WM_KeyDown,46,0);

    ولی کلید Shift رو در حال فشرده حساب می کنه که باید با این کد درست بشه:
     keybd_event(VK_SHIFT, 0,KEYEVENTF_KEYUP, 0);

    ولی با کمال تعجب وقتی این یک خط رو به سطرهای بالا اضافه می کنم، کدهای قبلی هم بی تاثیر می شند!!

  3. #3
    کاربر دائمی آواتار mbshareat
    تاریخ عضویت
    آبان 1387
    محل زندگی
    شهر مقدس قم-چهارمردان-کوچه 37
    پست
    963

    نقل قول: چطور می تونم متن یک کادر جستجو رو در برنامه دیگه دستکاری کنم؟

    این کد رو هم امتحان کردم باعث میشه تنها یک کارکتر حذف بشه!:

     Var
    XKeyState, XNewKeyState: TKeyboardState;
    Begin
    GetKeyboardState(XKeyState);
    XNewKeyState := XKeyState;
    XNewKeyState[VK_SHIFT] := $81;
    SetKeyboardState(XNewKeyState);
    PostMessage(EditHand,WM_KeyDown,36,0);
    PostMessage(EditHand,WM_KeyDown,46,0);
    SetKeyboardState(XKeyState);
    end;

  4. #4
    کاربر دائمی آواتار mbshareat
    تاریخ عضویت
    آبان 1387
    محل زندگی
    شهر مقدس قم-چهارمردان-کوچه 37
    پست
    963

    نقل قول: چطور می تونم متن یک کادر جستجو رو در برنامه دیگه دستکاری کنم؟

    باز هم سلام
    application.ProcessMessages;
    رو اضافه کردم مشکل حل شد!

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

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