يعمل السحب والإفلات. قضايا عامة ونظرية تقنية السحب والإسقاط

استخدام التكنولوجيا السحب والإسقاط (السحب والإسقاط) يسمح للمستخدم بنقل كائنات مختلفة من واحد إلى آخر، على سبيل المثال، عناصر قائمة إلى أخرى. للقيام بذلك، تحتاج إلى استخدام عنصري تحكم: الحوض والمصدر. المتلقي هو الكائن الذي سيستقبل الكائن المصدر (الكائن الذي يتم نقله).

يتم سرد الأحداث التي تحدث أثناء حركة الكائنات أدناه بالترتيب الذي حدثت به.

OnStartDrag(اكتب TStartDragEvent) - في بداية العملية، يتم إنشاؤه بواسطة الكائن المصدر. المعلمات التي تم تمريرها إلى معالج الحدث: كائن استقبال DragObject (نوع TDragObject)، كائن المصدر (نوع TObject).

OnDragOver(اكتب TDragOverEvent) - يقوم بإنشاء كائن متلقي عندما يكون الكائن المسحوب فوقه. المعلمات التي تم تمريرها إلى معالج الحدث: مرسل كائن المتلقي (نوع TObject)، مصدر الكائن المصدر (نوع TObject)، حالة حالة الحركة (اكتب TDragState)، X وY (اكتب عدد صحيح) - الإحداثيات الحالية لمؤشر الماوس، قبول ( اكتب boolean ) علامة تأكيد عملية النقل. توضح حالة الحركة ما إذا كان الكائن الذي يتم نقله موجودًا في منطقة المستقبل أم أنه يتحرك فيها أم أنه غادرها. تتيح المعلمات التي تم تمريرها للكائن الوجهة قبول الكائن المصدر أو رفضه. يتم تعيين معلمة القبول على Trye إذا تم قبول عملية النقل، وإلا فسيتم تعيينها على False.

onDragDrop (اكتب TDragDropEvent) - يتم إنشاؤه بواسطة كائن المتلقي عند إسقاط الكائن المسحوب عليه. يقوم معالج الحدث بتمرير الإحداثيات الحالية لمؤشر الماوس، وكائن المرسل المتلقي (نوع TObject)، ومصدر كائن الحركة الأصلي (نوع TObject).

onEndDrag (نوع EndDragEvent) - يتم رفعه عند اكتمال عملية السحب. إحداثيات X وY للنقطة التي يتم فيها تمرير كائن المرسل المصدر وكائن هدف جهاز الاستقبال إلى معالج الحدث.

لإنشاء السحب والإفلات، يكفي تنفيذ حدثين: OnDragDrop وOnDragOver مع تعيين الخاصية DragMode إلى dmAutomatic. بخلاف ذلك، يجب ترميز بداية عملية السحب، أسلوب BeginDrag، بواسطة المبرمج.

لتوحيد المواد، سنقوم بإنشاء التطبيق التالي. ضع مكون اللوحة في النموذج. قم بتعيين خاصية DragMode لـ Object Inspector إلى dmAutomatic. لنحدد كائن النموذج ونستخدم Object Inspector لإنشاء الأحداث التالية:

الإجراء TForm1.FormDragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean); ابدأ إذا كان المصدر = Panel1 ثم قبول:= صحيح وإلا قبول:= خطأ؛ نهاية؛ الإجراء TForm1.FormDragDrop(Sender, Source: TObject; X, Y: Integer); ابدأ Panel1.Left:= X; Panel1.Top:= Y; نهاية؛

الآن، من خلال تشغيل التطبيق والنقر على زر الماوس أعلى اللوحة، يمكننا نقل كائن اللوحة في جميع أنحاء النموذج.

خلاصة القول: تعرفنا على التكنولوجيا السحب والإسقاط(السحب والإفلات) واستخدمها عمليًا.

حيث يتم تنفيذ عناصر واجهة المستخدم الرسومية باستخدام الرسوم الزائفة) باستخدام الماوس أو شاشة اللمس.

يتم تنفيذ الطريقة عن طريق "التقاط" (من خلال الضغط مع الاستمرار على المفتاح الرئيسي ( أولاً، عادةً ما يكون زر الماوس الأيسر) لكائن معروض على شاشة الكمبيوتر، متاحًا برمجيًا لمثل هذه العملية، ونقله إلى مكان آخر (لتغيير الموقع) أو "رميه" على عنصر آخر (لاستدعاء الإجراء المقابل المقدم بواسطة البرنامج). فيما يتعلق بالنوافذ (القادرة أيضًا على التحرك بطريقة مماثلة)، لا يتم استخدام هذا المصطلح عادةً.

الإجراءات الأساسية وأبسط الأمثلة على إجراءات السحب والإفلات هي: نقل كائن، نقل كائن من لوحة إلى لوحة، على الرغم من أن السحب والإفلات يستخدم على نطاق واسع في أنظمة التشغيل الحديثة وهو أحد الطرق الرئيسية للتفاعل مع جهاز كمبيوتر في مستخدم واجهة رسومية.

يمكن أن تكون الكائنات المراد نقلها هي عناصر الواجهة التالية: أيقونات سطح المكتب، وأشرطة الأدوات العائمة، واختصارات البرامج في شريط المهام (بدءًا بـ Win XP)، وعناصر TreeView، والسلسلة النصية، وخلية DataGridView، وكذلك عناصر OLE. يمكن أن تتحرك الكائنات داخل منطقة معينة، داخل نافذة واحدة، بين لوحات نافذة واحدة، وبين النوافذ المختلفة.

يجب أن يتم تشغيل حدث السحب من خلال بعض إجراءات المستخدم. في أغلب الأحيان، يكون هذا الإجراء هو الضغط على زر الماوس الأيسر على أحد العناصر (يسمى هذا الحدث MouseDown)، والذي يمكن نقله في الحاوية الخاصة به. تحتوي بعض المكونات على أحداث بدء السحب والإفلات الخاصة بها - على سبيل المثال، يحتوي TreeView على حدث ItemDrag.


مؤسسة ويكيميديا. 2010.

تعرف على معنى "السحب والإفلات" في القواميس الأخرى:

    السحب والإفلات- 〈[ dræg ənd drɔ̣p] n.; ; أونز. EDV〉 das Anklicken eines Objektes, das auf dem Computerbildschirm (in an andere Datei bzw. an an andere Stelle) verschoben u. dort wieder losgelassen wird [engl. اسحب "ziehen" + و"und" + drop "fallen... ... Universal-Lexikon

    شكل من أشكال تنفيذ أي إجراءات في واجهات المستخدم الرسومية، بما في ذلك استخدام فأرة الكمبيوتر. ترجمتها من الإنجليزية تعني حرفيًا: السحب والرمي. يتم تنفيذ الإجراء من خلال التشغيل المرئي على الشاشة... ... قاموس المصطلحات التجارية

    السحب والإسقاط- (الحوسبة) لنقل رمز أو ملف أو ما إلى ذلك عبر الشاشة باستخدام الماوس وتحريره في مكان مختلف (صفة السحب والإسقاط) الإدخال الرئيسي: السحب ... قاموس إنجليزي مفيد

    السحب والإسقاط- تكنولوجيا المعلومات لنقل شيء ما من منطقة واحدة على شاشة الكمبيوتر إلى أخرى باستخدام الماوس: »يسمح لك البرنامج بسحب وإفلات عناصر صور الصفحة والنص وما إلى ذلك. في أي مكان تريد. المدخل الرئيسي: السحب... المصطلحات المالية والتجارية

    السحب والإسقاط- الفعل الأمريكي في المملكة المتحدة ن.؛ الجنرال: ; رر.: unz.; EDV〉 das Anklicken eines Objektes, das auf dem Computerbildschirm (in an andere Datei bzw. an an andere Stelle) verschoben u. دورت فيدر لوسجيلاسين ورد )