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

نام تاپیک: عمل کردن HotKey فقط با شرط خاص

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

    عمل کردن HotKey فقط با شرط خاص

    سلام
    من در دو برنامه که ممکنه همزمان باز باشند، از Shift+W برای بازگشت به برنامه استفاده می کنم.
    فرض کنید برنامه A,B باز هستند و هر دو با برنامه های دیگه روی یک پوشه کار مرتبط انجام میدند.برای اینکه نیاز به ور رفتن به Alt+Tab نشه Shift+W رو تعیین کردم که سریع به برنامه مورد نظر منتقل بشم.
    هر کدوم از دو برنامه A,B به تنهایی باز باشه Shift+W خوب عمل می کنه ولی اگر هر دو باز باشند برای یکی عمل می کنه.
    این در حالیه که برای برنامه A فقط در حالی بازگشت به برنامه رو میخوام که برنامه C فعال باشه.
    راهی هست که مطمئن بشم Hotkey تعیین شده(همون Shift+W) در صورتیکه برنامه C فعال نیست برای برنامه B عمل می کنه؟
    یعنی پیغام صفحه کلید وقتی که برنامه C فعال نیست، به برنامه B می رسه؟
    این کد رو چطور برای برنامه A تغییر بدم؟
    ..
    Procedure WMHotkey( Var msg: TWMHotkey ) ;message WM_HOTKEY;
    ...
    procedure TFileBrowserForm.FormCreate(Sender: TObject);
    begin
    RegisterHotkey (Handle, 1, MOD_Shift, Ord('W'));
    ...
    Function WindowCaption(H:THandle):String;
    Var
    aText:array [0..255] of char;
    begin
    SendMessage(H, WM_GETTEXT,
    SizeOf(aText), integer(@aText)) ;
    Result:=aText;
    end;
    procedure TFileBrowserForm.WMHotkey(var msg: TWMHotkey);
    begin
    If (msg.hotkey = 1) and (pos('Foxit Reader',WindowCaption(GetForeGroundWindow()))>0)
    and (FileBrowserForm.Visible=true) Then
    Begin
    SetForeGroundWindow(Self.Handle);
    Application.Restore;
    End;
    end;

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

    نقل قول: عمل کردن HotKey فقط با شرط خاص

    سلام
    فهمیدم میشه بدون اون شرط خاص،تعریف hotKey رو ملغی کرد و با Keybd_Event فشار و رها کردن کلید رو شبیه سازی کرد و بعد دوباره HotKey رو تعریف کرد.فقط نمی دونم چرا نیاز نبود اگر مثلا Shift+Q رو تعریف کردم رها کردن Shift روشبیه سازی کنم.

تاپیک های مشابه

  1. سوال: چرا HotKey در برنامم فقط یک بار کار می کنه؟
    نوشته شده توسط mbshareat در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 3
    آخرین پست: جمعه 16 اردیبهشت 1390, 18:51 عصر
  2. سوال: hotkey
    نوشته شده توسط mehdi_csharp در بخش C#‎‎
    پاسخ: 0
    آخرین پست: شنبه 02 بهمن 1389, 12:04 عصر
  3. مشکل در مورد HotKey
    نوشته شده توسط parsiyan_mohsen در بخش برنامه نویسی در 6 VB
    پاسخ: 4
    آخرین پست: شنبه 17 مهر 1389, 13:41 عصر
  4. Hotkey App
    نوشته شده توسط KING_TESLA در بخش C#‎‎
    پاسخ: 2
    آخرین پست: سه شنبه 13 مهر 1389, 16:57 عصر
  5. از کار انداختن HotKey
    نوشته شده توسط در بخش VB.NET
    پاسخ: 0
    آخرین پست: دوشنبه 28 مهر 1382, 13:50 عصر

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

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