الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كود fill color ضرووري

مغلق
بدأه RJD73_59 في 3 يونيو 2005 · 9 رد · 835 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم :

أريد طريقة لإكمال برنامجي الرسام :-

المطلوب ::

مثلا قمت برسم دائرة على picture box بواسطة الضغط على زر.

الدائرة طبعا مفرغة أريد أن أضغط على زر آخر بعد تحديد اللون طبعا وأضغط على الدائرة التي رسمتها وبعد ذلك تمتلأ الدائرة باللون الذي حددته .

أتمنى أن يكون الموضوع مفهوم , لقد وجدت الكثير من البرامج الرائعة في هذا المنتدى حول هذا الموضوع ولكن أيا منها لم يكن عن طريق ضغط زر معين.

أتمنى منكم الرد العاجل وشكرا مقدما

#2

اخي الفاضل

ارجو ان المثال المرفق يكون فيه بعض الفائدة

غير متاكد من كيفية تغير الحدث من mose down ل button clic;k

عليك ان تجرب

Option Explicit

Private Type POINTAPI
    X As Long
    Y As Long
End Type

Private Declare Function FloodFill Lib "gdi32" (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long, ByVal crColor As Long) As Long
Private Declare Function CreateSolidBrush Lib "gdi32" (ByVal crColor As Long) As Long
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long

Private Sub Form_Load()
Dim Point(0 To 12) As POINTAPI
Dim i As Integer

    ' Draw a polygon.
    Point(0).X = 47: Point(0).Y = 66
    Point(1).X = 105: Point(1).Y = 90
    Point(2).X = 124: Point(2).Y = 21
    Point(3).X = 158: Point(3).Y = 82
    Point(4).X = 261: Point(4).Y = 40
    Point(5).X = 227: Point(5).Y = 105
    Point(6).X = 296: Point(6).Y = 149
    Point(7).X = 211: Point(7).Y = 165
    Point(8).X = 208: Point(8).Y = 239
    Point(9).X = 124: Point(9).Y = 170
    Point(10).X = 52: Point(10).Y = 218
    Point(11).X = 70: Point(11).Y = 131
    Point(12).X = 12: Point(12).Y = 118
    
    CurrentX = Point(12).X
    CurrentY = Point(12).Y
    For i = LBound(Point) To UBound(Point)
        Line -(Point(i).X, Point(i).Y)
    Next i
End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim s As Integer
Dim color As Long
Dim brush As Long
Dim old_brush As Long
    
    ' Pick a random color other than black and
    ' the point's current color.
    Do
        color = QBColor(Int(15 * Rnd + 1))
    Loop While color = Point(X, Y)
    
    ' Create and select a brush of this color.
    brush = CreateSolidBrush(color)
    old_brush = SelectObject(hdc, brush)
    
    ' Do the flood.
    s = FloodFill(hdc, X, Y, vbBlack)
    
    ' Select the old brush and delete the new one.
    brush = SelectObject(hdc, old_brush)
    s = DeleteObject(brush)
    
    Refresh
End Sub

مثال

flood.zip

29_09_05_02_32_59_1128029579_4_13_3[_].gif

صور gif شفافة لتجميل واجة البرنامج

الخط العثماني للمهتمين ببرمجة برامج تلاوة القرآن

كيف يمكن عمل سكرول بالماوس, scroling by mouse wheel

كبفية استعراض ملف PDF في تكست

06_02_06_08_01_06_1139241666down-logo_1.gif

هل نكذب علي الله ام نكذب علي انفسنا

البـر لا يبلي ، و الذنب لا ينسـي ، و الديـان لا يمـوت ، افعـل مـا شئت كما تـديـن تـدان

ليس كل من تعمم مفتيا ، بل ان الدين الاسلامي ليس قيه كهانه و بالتالي ليس فيه ما يعرف ب رجال الدين – احمد رجب

                                  مع خالص تحيـــــــــــــــــــــــــــــــــاتي

                                                   GAF58 

#3

مشكور اخي وانا احاول بالكود

#4
RJD73_59 كتب:
مشكور اخي وانا احاول بالكود

الشكر لله وحده اخي الفاضل

موفق باذن الله

29_09_05_02_32_59_1128029579_4_13_3[_].gif

صور gif شفافة لتجميل واجة البرنامج

الخط العثماني للمهتمين ببرمجة برامج تلاوة القرآن

كيف يمكن عمل سكرول بالماوس, scroling by mouse wheel

كبفية استعراض ملف PDF في تكست

06_02_06_08_01_06_1139241666down-logo_1.gif

هل نكذب علي الله ام نكذب علي انفسنا

البـر لا يبلي ، و الذنب لا ينسـي ، و الديـان لا يمـوت ، افعـل مـا شئت كما تـديـن تـدان

ليس كل من تعمم مفتيا ، بل ان الدين الاسلامي ليس قيه كهانه و بالتالي ليس فيه ما يعرف ب رجال الدين – احمد رجب

                                  مع خالص تحيـــــــــــــــــــــــــــــــــاتي

                                                   GAF58 

#5

ألف شكر للمساعدة القيمة لقد ضبط الكود والبرنامج يعمل 100% بعد بعض التعديلات طبعا

#6

أخي الفاضل لقد ضبط الكود 100% ولكن مع الفورم أما الرسم على picture box فلم يضبط

#7

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

مع الشكر

#8

:( :(

#9

:^)

#10

يعني خلاص .. استسلم للامر الواقع وانسى الموضوع .. -_-

هذا الموضوع مغلق.

مواضيع مشابهة