تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] طريقة عمل ازرار على صرة من الفوتوشوب
#6
اخي الكريم ان كنت تريد ان تعمل بطريقة احترافية فيتوجب عليك العمل مع دوال الرسم و معالجة احداث الضغط في اماكن محددة توافق اماكن الازرار
انا افترض ان كل ما على الواجهة هو عبارة عن صورة ثابته 
لذا الحل الوحيد هو اضافة حدث في نقاط محددة توافق مواقع الازرار على الشاشة 
في تصوري لو قمت برسم مستطيل صغير فوق كل زر و بعدها قمت بمعالجة حدث الضغط داخل هذا المستطيل تكون قد وصلت الى المطلوب
طبعا بامكانك المعالجة بطرق اخرى 
وفقا لتصوري
لنقم بتعريف المتغيرات التالية
PHP كود :
   Private rect As Rectangle
    Private pen 
As Pen Pens.Black 

بعدها سنعطي قيم ابتدائية لرسم المستطيل في المكان الصحيح فوق الزر المطلوب مع الحدث الذي نريد التقاطه
PHP كود :
       rect = New Rectangle(4394915823)
 
       AddHandler ClickAddressOf Form2_Click 

بعدها سنقوم برسم المستطيل مع اقلاع النموذج بتجاوز الطريقة الافتراضية للرسم
PHP كود :
   Protected Overrides Sub OnPaint(As PaintEventArgs)
 
       MyBase.OnPaint(e)
 
       e.Graphics.DrawRectangle(penrect)
 
   End Sub 

الان اصبح لدينا مستطيل فوق الزر المحدد كل ما بقي هو معالجة الحدث المسؤول عن الضغط داخل المستطيل
PHP كود :
   Private Sub Form2_Click(sender As ObjectAs EventArgs)
 
       Dim cursorPos As Point Me.PointToClient(Cursor.Position)
 
       If rect.Contains(cursorPosThen
            MessageBox
.Show("Button Clicked")
 
       Else
            MessageBox
.Show("Button Not Clicked")
 
       End If
 
       Invalidate()
 
   End Sub 

عليك فقط ايجاد المواضع الصحيحة للازرار على النموذج و حجمها
بالتوفيق اخي
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد }}}
تم الشكر بواسطة: sendbad100 , عبد العزيز البسكري


الردود في هذا الموضوع
RE: اريد حالا سريعا لمشكلتي - بواسطة سعود - 05-09-16, 12:25 PM
RE: اريد حالا سريعا لمشكلتي - بواسطة abulayth - 05-09-16, 12:28 PM
RE: اريد حالا سريعا لمشكلتي - بواسطة mudz - 05-09-16, 04:34 PM
RE: اريد حالا سريعا لمشكلتي - بواسطة ابو ليلى - 05-09-16, 05:38 PM


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم