1 00:00:00,000 --> 00:00:00,320 2 00:00:00,320 --> 00:00:02,520 >> SPEAKER 1: بیایید به یک برنامه ارسال که شامل یک پنجره، 3 00:00:02,520 --> 00:00:04,070 دایره، و مکان نما من. 4 00:00:04,070 --> 00:00:07,890 به طور خاص، اجازه دهید یک نمونه از یک سیاه و سفید دایره بر روی صفحه نمایش، و پس از آن 5 00:00:07,890 --> 00:00:10,180 اجازه دهید آموزش آن را به دنبال مکان نما من. 6 00:00:10,180 --> 00:00:14,650 بنابراین اگر من حرکت موس من بالا، پایین، چپ و یا راست، دایره زیر همراه. 7 00:00:14,650 --> 00:00:20,630 >> اجازه دهید اول شامل gevents.h، به طوری که ما دسترسی به رویدادی گرافیکی داشته باشد. 8 00:00:20,630 --> 00:00:25,060 بیایید بعدی شامل gobjects، به طوری که ما به اینترنت دسترسی دارند 9 00:00:25,060 --> 00:00:26,480 اشیاء مانند محافل - 10 00:00:26,480 --> 00:00:28,890 یا دقیق تر، بیضی ها، عنوان خواهیم دید. 11 00:00:28,890 --> 00:00:32,560 و پس از آن اجازه دهید عبارتند از gwindow.h، به طوری که ما دسترسی دارند 12 00:00:32,560 --> 00:00:34,090 به یک پنجره گرافیکی. 13 00:00:34,090 --> 00:00:36,860 بعد، اجازه دهید اصلی اعلام در روش معمول. 14 00:00:36,860 --> 00:00:39,460 درجه اعتبار ساقط اصلی بین المللی. 15 00:00:39,460 --> 00:00:43,090 بیایید به نمونه، و یا ایجاد، یک پنجره با GWindow. 16 00:00:43,090 --> 00:00:45,390 و ما رو تو پنجره متغیر تماس بگیرید. 17 00:00:45,390 --> 00:00:47,890 می شود newGWindow. 18 00:00:47,890 --> 00:00:53,380 و من تا حدودی خودسرانه شما را پنجره 320 پیکسل در 240 پیکسل می باشد. 19 00:00:53,380 --> 00:00:55,280 >> در حال حاضر ما نیاز به ایجاد نمونه که دایره. 20 00:00:55,280 --> 00:00:58,160 خب، معلوم است که یک دایره یک مورد خاص از یک بیضی است. 21 00:00:58,160 --> 00:01:01,780 این فقط اتفاق می افتد که عرض و ارتفاع یک دایره برابر است. 22 00:01:01,780 --> 00:01:04,599 بنابراین اجازه دهید نمونه یک بیضی به شرح زیر است. 23 00:01:04,599 --> 00:01:05,770 GOval. 24 00:01:05,770 --> 00:01:07,950 ما آن را دایره تماس بگیرید، هر چند. 25 00:01:07,950 --> 00:01:11,160 و این رفتن به newGOval. 26 00:01:11,160 --> 00:01:14,340 و ما قصد داریم مشخص است که آن را در سمت چپ بالا آغاز خواهد شد 27 00:01:14,340 --> 00:01:17,050 گوشه، که مختصات 0 کاما از هم 0 می باشد. 28 00:01:17,050 --> 00:01:21,360 و عرض این جهانی رفتن به 50 تا 50 - 29 00:01:21,360 --> 00:01:23,700 به عبارت دیگر، یک دایره. 30 00:01:23,700 --> 00:01:26,090 >> در حال حاضر ما یک پنجره، ما یک دایره. 31 00:01:26,090 --> 00:01:28,950 اما ما هنوز اضافه نشده است که دایره به پنجره. 32 00:01:28,950 --> 00:01:32,000 بنابراین ما باید انجام دهیم این است که به صراحت. 33 00:01:32,000 --> 00:01:34,760 اضافه کردن پنجره، دایره. 34 00:01:34,760 --> 00:01:37,540 در نتیجه با اضافه کردن دومی به سابق. 35 00:01:37,540 --> 00:01:39,080 >> حالا اجازه دهید برای همیشه لطفا برای انجام کاری. 36 00:01:39,080 --> 00:01:42,520 اجازه دهید در حلقه بی نهایت نشستن، گوش دادن به رویدادهای ماوس. 37 00:01:42,520 --> 00:01:45,270 به طور خاص کلیک نیست، اما حرکات ماوس. 38 00:01:45,270 --> 00:01:48,450 و پاسخ به آن جنبش با حرکت دایره. 39 00:01:48,450 --> 00:01:49,630 در اینجا می رویم. 40 00:01:49,630 --> 00:01:52,820 در حالی که درست است. 41 00:01:52,820 --> 00:01:56,710 بیایید برای یک رویداد بررسی با GEvent، آن را رویداد. 42 00:01:56,710 --> 00:01:59,580 می شود getNextEvent. 43 00:01:59,580 --> 00:02:03,460 و اجازه دهید به طور خاص سعی کنید یک رویداد موس از برخی از انواع. 44 00:02:03,460 --> 00:02:07,250 بیایید بعد مطمئن شوید که این رویداد می کند وجود دارد برابر نیست تهی، به طوری که 45 00:02:07,250 --> 00:02:08,650 در واقع چیزی برای پاسخ به. 46 00:02:08,650 --> 00:02:11,890 47 00:02:11,890 --> 00:02:19,990 >> چک در کنار و اجازه دهید اگر getEventType، عبور در رویداد، برابر MOUSE_MOVED، 48 00:02:19,990 --> 00:02:23,180 که یک ثابت خاص است، اعلام کرد در کتابخانه قابل حمل استنفورد، که 49 00:02:23,180 --> 00:02:25,540 معنی است که موس در واقع منتقل شده است. 50 00:02:25,540 --> 00:02:28,830 >> سپس به ادامه دهید آیا پس از. 51 00:02:28,830 --> 00:02:29,580 اعلام دو برابر شود. 52 00:02:29,580 --> 00:02:31,050 و من نام آن را ایکس. 53 00:02:31,050 --> 00:02:35,470 به طور خاص ذخیره سازی در آن بازگشت ارزش getX از این رویداد. 54 00:02:35,470 --> 00:02:37,710 به عبارت دیگر، من x-مختصات که در آن 55 00:02:37,710 --> 00:02:39,320 ماوس را به حرکت کرد. 56 00:02:39,320 --> 00:02:44,480 اما فقط به خط دایره تا دقیقا در بالای مکان نما من، به من اجازه دهید اکنون 57 00:02:44,480 --> 00:02:49,600 کم کردن عرض دایره خود را تقسیم بر 2. 58 00:02:49,600 --> 00:02:52,160 به عبارت دیگر، اجازه دهید کم خارج از شعاع آن است. 59 00:02:52,160 --> 00:02:54,180 >> اجازه دهید انجام کاری مشابه در حال حاضر برای y است. 60 00:02:54,180 --> 00:02:57,840 Y می شود دریافت مختصات y از آن رویداد - 61 00:02:57,840 --> 00:02:59,930 است که، ماوس نقل مکان کرد - 62 00:02:59,930 --> 00:03:03,320 منهای getWidth از دایره. 63 00:03:03,320 --> 00:03:06,810 و این زمان ما را کامل انجام قطر، نه شعاع. 64 00:03:06,810 --> 00:03:13,650 در نهایت، اجازه دهید تنظیم محل دایره می شود که x با کاما جدید y است. 65 00:03:13,650 --> 00:03:17,670 بیایید نجات دهد، تدوین، و اجرای این برنامه است. 66 00:03:17,670 --> 00:03:19,710 >> را مکان نما. 67 00:03:19,710 --> 00:03:22,550 . / مکان نما. 68 00:03:22,550 --> 00:03:25,410 این دایره در وجود بالا گوشه سمت چپ. 69 00:03:25,410 --> 00:03:29,530 در حال حاضر، به من اجازه حرکت موس من بیش از آن پنجره و اگر چفت دایره را ببینید 70 00:03:29,530 --> 00:03:32,200 بر روی آن به عنوان انتظار می رود. 71 00:03:32,200 --> 00:03:33,490 و در واقع آن را ندارد. 72 00:03:33,490 --> 00:03:38,380 توجه داشته باشید که به طور خاص، دایره است در بالا بسیار از مکان نما من، 73 00:03:38,380 --> 00:03:42,580 کاملا متمرکز است، چرا که از ریاضی ما که شامل قطر آن و 74 00:03:42,580 --> 00:03:43,830 شعاع آن است. 75 00:03:43,830 --> 00:03:45,395