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

نام تاپیک: حرکت دادن شی روی فرم بوسیله کلیدهای جهتی

  1. #1
    کاربر دائمی آواتار system32
    تاریخ عضویت
    خرداد 1388
    محل زندگی
    اصفهان
    سن
    35
    پست
    381

    Wink حرکت دادن شی روی فرم بوسیله کلیدهای جهتی

    سلام خدمت تمام سی شارپ کاران:

    دوستان چطوری می تونم یه کنترل مثل باتن رو بوسیله کلیدهای جهتی روی فرم حرکت بدم.

  2. #2
    کاربر دائمی آواتار Mohsen229266
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    تهران
    سن
    36
    پست
    396

    نقل قول: حرکت دادن شی روی فرم بوسیله کلیدهای جهتی

    تو سایت در مورد KeyPress جستجو کن پیدا میکنی

  3. #3

    نقل قول: حرکت دادن شی روی فرم بوسیله کلیدهای جهتی

    برای باتن فکر نمیکنم بشه با کلیدهای جهت ها جابجاش کرد چون معمولا جهت ها واسه جابجا کردی کرسر استفاده میشه (در باتن). یه نمونه کد برای تکست باکس میذارم امیدوارم به دردت بخوره!

    private void textBox1_KeyDown(object sender, KeyEventArgs e)
    {
    switch (e.KeyValue)
    {
    case 37: textBox1.Left--;
    break;
    case 38: textBox1.Top--;
    break;
    case 39: textBox1.Left++;
    break;
    case 40: textBox1.Top++;
    break;
    }
    }

  4. #4
    کاربر دائمی آواتار system32
    تاریخ عضویت
    خرداد 1388
    محل زندگی
    اصفهان
    سن
    35
    پست
    381

    نقل قول: حرکت دادن شی روی فرم بوسیله کلیدهای جهتی

    ممنون از جواب دوستمون. ولی ای کاش می شد این کار رو برای دیگر کنترل ها نیز انجام داد. مثلا باتن. اگه من برای باتن این کارو بکنم فقط فوکوسش تغییر می کنه نه موقعیتش. آیا راه حلی وجود داره؟

  5. #5
    کاربر دائمی آواتار asefy2008
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    تهران
    سن
    36
    پست
    729

    نقل قول: حرکت دادن شی روی فرم بوسیله کلیدهای جهتی

    سلام این جا یه مثال هست اما با کلیدهای جهتی نیست با کرسر هست امیدوارم بدردت بخوره.
    موفق باشید

  6. #6

    نقل قول: حرکت دادن شی روی فرم بوسیله کلیدهای جهتی

    می تونی مشابه کد بالا رو تو keypress فرمت بنویسی منتهی باید حتماً keypreview رو برای فرمت true کنی

  7. #7
    کاربر دائمی آواتار system32
    تاریخ عضویت
    خرداد 1388
    محل زندگی
    اصفهان
    سن
    35
    پست
    381

    نقل قول: حرکت دادن شی روی فرم بوسیله کلیدهای جهتی

    کاملا درسته. از همگی ممنون.

    من دارم یه بازی مارپیچ می سازم. حالا یه سوال دیگه: چطوری می توانم کاری کنم که اگر شی به کناره های خط برخورد کرد از خط عبور نکنه.

  8. #8

    نقل قول: حرکت دادن شی روی فرم بوسیله کلیدهای جهتی

    سلام
    می توانید محتصات کناره های خط را با محتصات کناره های شی مورد نظر مقایسه کنید و در صورت تداخل از ادامه حرکت آن جلوگیری کنید.
    موفق باشید.

    مجموعه آموزشی Asp.Net Core Mvc کاملا به زبان فارسی(21 ماژول و 15 ساعت فیلم آموزشی همراه با سورس کامل تمرینات و پروژه عملی انجام شده در طول آموزشی)
    مشاهده جزئیات در آدرس http://www.mkiani.ir/blog/content/53084


    وب سایت : http://www.mkiani.ir
    پست الکترونیک : mkiani3000@gmail.com

    موفق و پیروز باشید.
    مهدی کیانی


  9. #9
    کاربر دائمی آواتار system32
    تاریخ عضویت
    خرداد 1388
    محل زندگی
    اصفهان
    سن
    35
    پست
    381

    نقل قول: حرکت دادن شی روی فرم بوسیله کلیدهای جهتی

    ممنون از شما. ولی اگه لطف کنید و یکمی از کد مربوطه را برام بزارید قول می دم بقیش رو خودم انجام بدم.

  10. #10
    کاربر دائمی آواتار vandermond
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    رايانه
    پست
    526

    نقل قول: حرکت دادن شی روی فرم بوسیله کلیدهای جهتی

    اين كدي هستش كه از راست و چپ كنترل ميكنه. اينجا نسبت به فرم در نظر گرفته شده. يعني از راست و چپ فرم بيرون نميره.حالا اگه شما فرضا ميخوايد از يك خط مايل اون طرف تر نره، باز با همين روش ها و با توجه به اين اطلاعاتي كه داري (فاصله باتن از چپ،پهناي باتن ، فاصله باتن از بالا ، ارتفاع باتن ) و اطلاعات خطي كه داري ميتوني مقايسه كني.:
    if (btnRobot.Left <= this.Left/*Line1.left*/)
    btnRobot.Left = this.Left;
    if (btnRobot.Left + btnRobot.Width >= this.Width/*Line2.Width*/)
    btnRobot.Left = this.Width - btnRobot.Width;

  11. #11
    کاربر دائمی آواتار Mohsen229266
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    تهران
    سن
    36
    پست
    396

    نقل قول: حرکت دادن شی روی فرم بوسیله کلیدهای جهتی

    سلام
    این کدو ببین یک button رو داخل Panel محدود میکنه

    private void button1_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
    {
    int Step = 2;
    if (e.KeyValue == 39)
    {
    if (button1.Left + button1.Width < panel1.Width)
    button1.Left += Step;
    }
    else if (e.KeyValue == 37)
    {
    if (button1.Left > 0)
    button1.Left -= Step;
    }
    else if (e.KeyValue == 38)
    {
    if (button1.Top > 0)
    button1.Top -= Step;
    }
    else if (e.KeyValue == 40)
    {
    if (button1.Top + (button1.Height) < panel1.Height)
    button1.Top += Step;
    }
    }
    آخرین ویرایش به وسیله Mahmoud.Afrad : یک شنبه 01 دی 1398 در 03:32 صبح

  12. #12
    کاربر دائمی آواتار ebrahim.rayatparvar
    تاریخ عضویت
    آبان 1392
    محل زندگی
    https://www.youtube.com/c/zangclass
    پست
    714

    نقل قول: حرکت دادن شی روی فرم بوسیله کلیدهای جهتی

    با سلام و احنرام.
    شما برای حرکت دادن یک کنترل به صورت اصولی مثلا برای پیاده سازی بازی میتونید از لینک زیر استفاغده کنید

    لینک آموزشی

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

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