طراحي فرم هاي دلخواه براي برنامه هاي ويژوال بيسيک
 
درباره وبلاگ


هیچ کس تنهاییم را حس نکرد هیچ کس تنهاییم را لمس نکرد هیچ کس تنها بودنم را درک نکرد هیچ کس تنها بودنم را ندید چرا هیچ کس مرا باور ندارد؟ هیچ کس... چرا؟ خدایا چرا اینقدر تنهایم؟


ورود اعضا:

آمار وب سایت:
 

بازدید امروز : 1
بازدید دیروز : 5
بازدید هفته : 15
بازدید ماه : 1
بازدید کل : 383087
تعداد مطالب : 317
تعداد نظرات : 68
تعداد آنلاین : 1

فال روزانه

javahermarket

بزرگترین وبلاگ علمی تفریحی
یک شنبه 16 بهمن 1390برچسب:, :: 18:0 ::  نويسنده : مهران

طراحي فرم هاي دلخواه براي برنامه هاي ويژوال بيسيک

فرض کنيد يک image غير مستطيلي داريد که مي خواهيد از آن بعنوان فرم برنامه تان استفاده کنيد 
۱ - تصوير فرم مورد نظرتان را طراحي کرده و با فرمت bmp ذخيره کنيد . دقت نماييد که بايستي image خود را درون يک کادر مستطيلي قرار دهيد که با يک رنگ با RGB مشخص رنگ آميزي شده است :




۲ - يک فرم ويژوال بيسيک ايجاد کنيد و خاصيت BorderStyle آنرا صفر نماييد .
3 -
در متد Form Load بايستي image مورد نظر را به فرمتان assign کنيد :

کد

Me.picture=loadpicture(yourimagename)x
Me.width=Me.picture.width
Me.height=Me.picture.height



4 -
سپس بايستي يک ناحيه از اين image بسازيد که نسبت به رنگ RGB اي که در بالا به آن اشاره کردم transparent باشد . اگر فرض کنيم اين رنگ ، رنگ سياه باشد ( r=0 , g=0, b=0 ) :



LRegion=MakeRgn(yourimagename,0,0,0)x



5 -
حال بايستي ناحيه مشخص شده را بعنوان فرم برنامه تان قرار دهيد :



call SetWindowRgn(Me.hwnd,LRegion,True)x



6 -
يک ماژوال ايجاد کنيد و خطوط زير را در آن بنويسيد :

کد

Public Declare Function SetWindowRgn Lib "user32" (ByVal hwnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long
Public Declare Function MakeRgn Lib "Region.dll" (ByVal FileName As String, ByVal R As Integer, ByVal g As Integer, ByVal b As Integer) As Long
Public Declare Function DeleteRgn Lib "Region.dll" (ByVal Region As Long)x

Global lRegion As Long


7 -
در متد Form Unload عبارت زير را قرار دهيد :



Call DeleteRgn(LRegion)x



نکته ۱: بوسيله روتين زير مي توانيد فرم خود را در وسط صفحه قرار دهيد :

کد

Sub CenterForm(frm As Form)
frm.Left = (Screen.Width - frm.Width) / 2
frm.Top = (Screen.Height - frm.Height) / 2
End Sub

 


نظرات شما عزیزان:

نام :
آدرس ایمیل:
وب سایت/بلاگ :
متن پیام:
:) :( ;) :D
;)) :X :? :P
:* =(( :O };-
:B /:) =DD :S
-) :-(( :-| :-))
نظر خصوصی

 کد را وارد نمایید:

 

 

 

عکس شما

آپلود عکس دلخواه:







 
 
نویسندگان
پیوندها
آخرین مطالب