جمعه, ۱۲ بهمن, ۱۴۰۳ / 31 January, 2025
برنامه نویسی ماوس در Turbo C
با توجه به این كه برنامه های تحت داس رابط ضعیفی نسبت به ویندوز و لینوكس و... دارند ما حداقل باید برنامه هایمان را به ماوس مجهز كنیم تا این نقص تا حدودی برطرف شود. مخصوصا اگر بخواهیم یك برنامه گرافیكی بنویسیم برنامه مان بدون ماوس غیر قابل استفاده خواهد بود. خب بهتره بریم سر اصل مطلب. در این مقاله فعال كردن ماوس در زبان C توضیح داده شده. البته ما ماوس را با استفاده از وقفه ها كه در تمام كامپیوترهای IBM یكی هستند فعال می كنیم و كدهای ارائه شده با كمی تغییر در پاسكال و بیسیك نیز كار خواهند كرد. اگر شما با زبان C آشنایی ندارید ممكن است این كدها برایتان ناآشنا باشند.
پس بهتر است از خواندن این مقاله صرفنظر كنید. البته ممكن است به زودی آموزش C و ++C را نیز در این سایت بگذاریم. ابتدا برای این كه از ماوس استفاده كنیم باید بفهمیم كه درایور ماوس نصب شده یا نه؟ اگر نصب نشده باشد نمی توان ماوس را فعال كرد. برای این كار از تابع شماره ۰۰hex از وقفه ۳۳hex استفاده می كنیم. اگر قبلا با وقفه ها كار كرده باشید حتما می دانید كه شماره تابع وقفه در ثبات AH قرار می گیرد ولی توابع ۳۳hex به جای AH از AX استفاده می كنند. یعنی برای فراخوانی این وقفه شماره تابع آن را در ثبات AX قرار می دهیم.
پس از فراخوانی این وقفه اگر مقدار ثبات AX برابر ۰۰۰۰hex باشد یعنی درایور ماوس نصب نشده و ما نمیتوانیم از ماوس استفاده كنیم. پس از این كار باید نشانگر ماوس را د ر صفحه ظاهر كنیم. نشانگر ماوس دقیقا در وسط صفحه ظاهر خواهد شد. اگر در حالت متنی باشیم این نشانگر به صورت یك مستطیل و اگر در حالت گرافیكی باشیم نشانگر به صورت یك فلش كوچك نشان داده خواهد شد. برای ظاهر كردن كافی است از تابع شماره ۰۱ وقفه ۳۳h استفاده كنیم. برنامه زیر هم درایور ماوس را تشخیص داده و هم آن را در حالت متنی نشان میدهد:
#include <CONIO.H> #include <STDLIB.H> #include <DOS.H> void main() { union REGS r; clrscr(); r.x.ax= ۰; int۸۶(۰x۳۳,&r,&r); if(r.x.ax==۰) { printf("No Mouse Available....."); getch(); exit(۱); } r.x.ax=۱;//place ۰۱ in AX register int۸۶(۰x۳۳,&r,&r);//showing the mouse pointer printf(press any key to exit
); getch(); }
ایران مسعود پزشکیان دولت چهاردهم پزشکیان مجلس شورای اسلامی محمدرضا عارف دولت مجلس کابینه دولت چهاردهم اسماعیل هنیه کابینه پزشکیان محمدجواد ظریف
پیاده روی اربعین تهران عراق پلیس تصادف هواشناسی شهرداری تهران سرقت بازنشستگان قتل آموزش و پرورش دستگیری
ایران خودرو خودرو وام قیمت طلا قیمت دلار قیمت خودرو بانک مرکزی برق بازار خودرو بورس بازار سرمایه قیمت سکه
میراث فرهنگی میدان آزادی سینما رهبر انقلاب بیتا فرهی وزارت فرهنگ و ارشاد اسلامی سینمای ایران تلویزیون کتاب تئاتر موسیقی
وزارت علوم تحقیقات و فناوری آزمون
رژیم صهیونیستی غزه روسیه حماس آمریکا فلسطین جنگ غزه اوکراین حزب الله لبنان دونالد ترامپ طوفان الاقصی ترکیه
پرسپولیس فوتبال ذوب آهن لیگ برتر استقلال لیگ برتر ایران المپیک المپیک 2024 پاریس رئال مادرید لیگ برتر فوتبال ایران مهدی تاج باشگاه پرسپولیس
هوش مصنوعی فناوری سامسونگ ایلان ماسک گوگل تلگرام گوشی ستار هاشمی مریخ روزنامه
فشار خون آلزایمر رژیم غذایی مغز دیابت چاقی افسردگی سلامت پوست