الزعيم الرئيس
عدد الرسائل : 1095 العمر : 37 الموقع : https://pioneer.yoo7.com العمل/الترفيه : الحاسب الالى المزاج : الكمبيوتر احترامك لقوانين المنتدى : 0 نقاط العضو : الاوسمة : تاريخ التسجيل : 01/08/2008
| موضوع: شرح كيفية اظهار علم بلادك ( شرح مدعوم بالصور) الخميس 16 أكتوبر 2008, 18:56 | |
| بسم الله الرحمن الرحيم
ساقوم بشرح طريقة برمجة برنامج يعرض لمستخدمه علم الدولة + اسم الدولة ... كما في برامج الاختراق البيزون والبيفروست ... طبعا هذا الشرح مبسط لمعرفة طريقة الحصول على العلم ونستطيع ربط البرنامج باداة الوينسوك التي ستتعرف على الاي بي . يعني البرنامج قابل للتطوير .. نبدا بفتح مشروع جديد عن طريق الفجوال بيسك 6 وندرج التالي كما هو موضح
طريقة ادراج ListVew و ImageList كالتالي : Project>>>Components>>>Microsoft Window Common Controls 6 وستظهر لك في شريط الادوات الاداتين ...
ثانيا : سنجمع بعض اعلام الدول في مجلد ثم نذهب الي اداة ImageList وبزر الفارة الايمن نضغط على خصائص هذه الاداة ونذهب كما بالصورة التالية
انتهينا من هذه الاداة وسننتقل الي اداة اللست فيو وبزر الفارة الايمن على الاداة ونذهب الي خصائصها Properties ونغير التالي :
ثم
ثم
بهذا انتهينا من الاداتين وخصائصها بقي لدينا فقط اضافة في محرر القوائم .. نذهب من اعلى القائمة الي Tools ثم Menu Editor ستظهر كما الصورة التالية اتبعها بتركيز :
اعمل كما بالصورة ولا تؤشر على خانة visibel لاننا لو اخترناه ستظهر قائمة في الفورم وليست في اللست ... بعد ان تنتهي من المرحلة الاولى من محرر القوائم اضغط التالي : Next ثم اذهب الي الاسهم الاربعة واختر الثاني لكي تصبح هكذا (........) ثم املئ البيانات caption وتستطيع تسمية اي شي لانه سيظهر في قائمة اللست اثناء الضغط بزر الماوس الايمن .... نتابع الصورة
بهذا انتهينا من عملية الادراج والتعديل بقي لدينا كتابة الشيفرة وستكون سهلة ان شاء الله نضيف Module مع المشروع ونكتب فيه هذه الشيفرة :
كود: Private Declare Function GetLocaleInfo Lib "kernel32" Alias "GetLocaleInfoA" (ByVal Locale As Long, ByVal LCType As Long, ByVal lpLCData As String, ByVal cchData As Long) As Long
Private Const LOCALE_SYSTEM_DEFAULT As Long = &H400 Private Const LOCALE_SENGCOUNTRY = &H1002
Public Function GetMyCountry() As String 'اجراء بمتغير نصي Dim Names As String * 256, Info As Long 'تصريح بمتغير نصي وطولي
Info = GetLocaleInfo(LOCALE_SYSTEM_DEFAULT, LOCALE_SENGCOUNTRY, ByVal Names, Len(Names))
GetMyCountry = Left(Names, Info - 1)
End Function
Public Function GetFlag(MyCountry As String) As Integer 'اجراء بمتغير نصي Select Case (MyCountry) Case "Saudi Arabia": GetFlag = 1 Case "Algeria": GetFlag = 2 Case "Canada": GetFlag = 3 Case "Iraq": GetFlag = 4 Case "Kweit": GetFlag = 5 Case "Lebanon": GetFlag = 6 End Select End Function
شرح بسيط للكود :: استخدمنا اجراء خاص في الكود الاول private لنحصر رؤية الاجراء في الحصول على المعلومات بمتغيرات نصية وطولية .... بعدها انشانا اجراء جديد عام puplic وصرحنا بمتغيرين هما names كمتغير نصي ثم Info كمتغير طولي .. ثم انشانا اجراء عام وهو الحصول على العلم كمتغير نصي استخدمنا عبارة Select case Get flag يرمز الي رقم صورة العلم
هذا بالنسبة للموديل انتهينا من شفرته وسننتقل الي الفورم ومعنا شيفرتين كالتالي
لابد ان نتذكر ما كتبناه في في محرر القوائم المرحلة الثانية العنصر GetFlagCountry سيظهر لك من صفحة الشيفرة وساكتبه بالشيفرة كاملة ليتضح لكم
كود: Private Sub GetFlagCountry_Click() ListView1.ListItems.Add , , GetMyCountry, , GetFlag(GetMyCountry) End Sub
في حدث Click وهنا يتم اضافة العلم الي القائمة
الكود الثاني سيكون في حدث اللست اجراء MouseDown كالتالي
كود: If Button = 2 Then Me.PopupMenu menuFile
وهنا ربطنا اللست بمحرر القوائم والعنصر menufile عند الضغط عليه بزر الماوس سنخرج البرنامج الي عالم النت وسيظهر لنا كالتالي هذا كل مافي الشرح اتمنى لكم تطبيقا ممتعا | |
|