التابع Keyboard.isPressed()‎ في أردوينو

من موسوعة حسوب
< Arduino‏ | mouse
مراجعة 20:24، 6 نوفمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يتحقَّق التابع isPressed()‎ إن كان زر معيَّن من أزرار الفأرة مضغوطًا أم لا.

البنية العامة

Mouse.isPressed();
Mouse.isPressed(button);

المعاملات

button

محرفٌ يحدِّد هذا المعامل زر الفأرة المراد التحقُّق منه. القيم التي يمكن استعمالها مع هذا المعامل هي:

  • MOUSE_LEFT (القيمة الافتراضية)
  • MOUSE_RIGHT
  • MOUSE_MIDDLE

القيم المعادة

تعاد القيمة true المنطقية إن كان الزر button (أو الزر الأيسر إن لم يُعطَ) مضغوطًا أم لا.

أمثلة

استعمال قاطعتين لضغط زر الفأرة الأيسر باستمرار وتحريره:

#include <Mouse.h>

void setup(){
  // قاطعة تستعمل من أجل الضغط على زر الفأرة
  pinMode(2,INPUT);
  // قاطعة أخرى تستعمل من أجل تحرير الزر المضغوط
  pinMode(3,INPUT);
  // إنشاء اتصال تسلسلي مع الحاسوب
  Serial.begin(9600)
  // Mouse تهيئة وبدء المكتبة
  Mouse.begin();
}

void loop(){
  // متغير يخزن فيه حالة أزرار الفأرة
  int mouseState=0;
  // إن أغلقت القاطعة المتصلة بالرجل 2، اضغط زر الفأرة الأيسر باستمرار وخزِّن حالته
  if(digitalRead(2) == HIGH){
    Mouse.press();
    mouseState=Mouse.isPressed();
  }
  // إن أغلقت القاطعة المرتبطة المتصلة بالرجل 3، حرر زر الفأرة الأيسر المضغوط وخزَِّن حالته
  if(digitalRead(3) == HIGH){
    Mouse.release();
    mouseState=Mouse.isPressed();
  }
  // اطبع حالة زر الفأرة الحالي
  Serial.println(mouseState);
  delay(10);
}

انظر أيضًا

  • التابع begin()‎: يبدأ عملية محاكاة (emulating) لفأرة افتراضية موصولة بالحاسوب المتصل.
  • التابع click()‎: يرسل ضغطة سريعة وخاطفة إلى الحاسوب عند موقع مؤشر الفأرة الحالي.
  • التابع end()‎: يوقف عملية محاكاة (emulating) وصل فأرة افتراضية بالحاسوب المتصل. 
  • التابع move()‎: يحرك مؤشر الفأرة في الحاسوب المتصل.
  • التابع press()‎: يرسل ضغطة مستمرة إلى الحاسوب عند موقع مؤشر الفأرة الحالي.
  • التابع release()‎: يحرِّر زر الفأرة الذي ضُغِط عليه مسبقًا باستعمال التابع press()‎.

مصادر