راسخون

..:::تایپک جامع توابع ویژوال بیسیک:::..

siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 

اين تابع تا زماني که يکي از شرايط زير اتفاق بيفتد وقفه ايجاد مي کند
1 - کنترل مورد نظر تغيير وضيعت بدهد
2 - زمان مورد نظر سپري شود
اگر تابع کار خود را با موفقيت به پايان برساند مقدار بازگشتي يک عدد غير صفر و اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر خواهد بود

hHandle : هندل کنترل مورد نظر
dwMilliseconds : زمان مورد نظر

کد PHP:
Private Declare Function WaitForSingleObject Lib "kernel32.dll" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long  

 

siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 

از اين تابع براي دادن افکت هاي انيميشن به يم پنجره استفاده مي شود

hwnd : هندل پنجره مورد نظر
dwTime : مدت زماني که بايد عمل مورد نظر طول بکشد
dwFlags : چگونگي افکت گذاري روي پنجره را اين متغير مشخض مي کند. در اين باره ثابت هاي زير به شما کمک خواهد کرد
AW_HOR_POSITIVE : پنجره از چپ به راست باز مي شود
AW_HOR_POSITIVE : پنجره از راست به چپ باز مي شود
AW_VER_POSITIVE : پنجره از بالا به پايين باز مي شود
AW_VER_NEGATIVE : پنجره از پايين به بالا باز مي شود
AW_SLIDE : افکت اسلايد
AW_CENTER : از وسط باز مي شود
AW_ACTIVATE : پنجره را فعال مي کند (اين ثابت را با AW_HIDE به کار نبريد)
AW_HIDE : پنجره را مخفي مي کند (اين ثابت را با AW_ACTIVATE به کار نبريد)
AW_FADE : محو يا پيدايش تدريجي

کد PHP:
Const AW_HOR_POSITIVE = &H1 
Const AW_HOR_NEGATIVE = &H2 
Const AW_VER_POSITIVE = &H4 
Const AW_VER_NEGATIVE = &H8 
Const AW_CENTER = &H10 
Const AW_HIDE = &H10000 
Const AW_ACTIVATE = &H20000 
Const AW_SLIDE = &H40000 
Const AW_FADE = &H80000 

Private Declare Function AnimateWindow Lib "user32.dll" (ByVal hwnd As Long, ByVal dwTime As Long, ByVal dwFlags As Long) As Boolean  

 

siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 

اين تابع از يک پنجره عکس مي گيرد و آن را در يک کنترل گرافيکي چاپ مي کند.
گر تابع کار خود را با موفقيت به پايان برساند مقدار بازگشتي يک عدد غير صفر و اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر خواهد بود

hdc : هندل بافت گرافيکي کنترلي مقصد
x : نقطه شروع ترسيم عکس جديد در راستاي افق
y : نقطه شروع ترسيم عکس جديد در راستاي عمود
nWidth : عرض تصوير جديد
nHeight : ارتفاع تصوير جديد
hSrcDC : هندل بافت گرافيکي کنترلي که بايد از آن عکس گرفته شود
xSrc : فاصلهء تصوير از سمت چپ کنترل
ySrc : فاصلهء تصوير از بالاي کنترل
dwRop : نحوه ترسيم تصوير . ثابت هاي زير
SRC_PAINT : تصوير کنترل مبدا و مقصد را با هم Or کرده و در کنترل مقصد قرار مي دهد
SRC_ERASE : تصوير پنجره مقصد را Not کرده و با پنجره مبدا Or مي کند و نتيجه را در کنترل مقصد مي نويسد
SRC_INVERT : تصوير کنترل مبدا و مقصد را با هم Xor کرده و در کنترل مقصد قرار مي دهد
SRC_AND : تصوير کنترل مبدا و مقصد را با هم And کرده و در کنترل مقصد قرار مي دهد
SRC_COPY : تصوير کنترل مبدا رو بدون دستکاري در کنترل مقصد قرار مي دهد

کد PHP:
Private Const SRC_PAINT = &HEE0086 
Private Const SRC_ERASE = &H440328 
Private Const SRC_INVERT = &H660046 
Private Const SRC_AND = &H8800C6 
Private Const SRC_COPY = &HCC0020 

Private Declare Function BitBlt Lib "gdi32.dll" 
(ByVal hDestDC As Long, ByVal X As Long, ByVal Y As Long, 
ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long,
 ByVal XSrc As Long, ByVal YSrc As Long, ByVal dwRop As Long) As Long  

 

siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 
اين تابع يک تصوير را به جاي چشمک زن فعلي پنجره مورد نظر قرار مي دهد
اگر تابع کار خود را با موفقيت به پايان برساند مقدار بازگشتي يک عدد غير صفر و اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر خواهد بود
 
hwnd : هندل پنجره (کنترل) مورد نظر
hBitmap : تصوير مورد نظر ( مي توانيد اين تصوير را با استفاده از تابع CreateBitmap بسازيد )
nWidth : عرض تصوير مورد نظر
nHeight : طول تصوير مورد نظر
کد PHP:
Private Declare Function CreateCaret Lib "user32.dll" (ByVal hwnd As Long, ByVal hBitmap As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long 
siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 
اين تابع يک محدوده بيضي مي سازد ( براي اين کار تابع محدوده يک مستطيل را از شما مي گيرد و بزرگ ترين بيضي ممکن را در درون اين مستطيل مي سازد )
اگر تابع کار خود را با موفقيت انجام دهد مقدار بر گشتي يک اشاره گر از محدوده ساخته شده و در غير اينصورت مقدار بر گشتي صفر خواهد بود
 
X1 : مختصات X گوشه بالا سمت چپ
Y1 : مختصات y گوشه بالا سمت چپ
X2 : مختصات X گوشه پايين سمت راست
Y2 : مختصات y گوشه پايين سمت راست
کد PHP:
Private Declare Function CreateEllipticRgn Lib "gdi32.dll" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long 
siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 

اين تابع يک محدوده بيضي مي سازد ( براي اين کار تابع محدوده يک مستطيل را از شما مي گيرد و بزرگ ترين بيضي ممکن را در درون اين مستطيل مي سازد )
اگر تابع کار خود را با موفقيت انجام دهد مقدار بر گشتي يک اشاره گر از محدوده ساخته شده و در غير اينصورت مقدار بر گشتي صفر خواهد بود

X1 : مختصات X گوشه بالا سمت چپ
Y1 : مختصات y گوشه بالا سمت چپ
X2 : مختصات X گوشه پايين سمت راست
Y2 : مختصات y گوشه پايين سمت راست
کد PHP:
Private Declare Function CreateEllipticRgn Lib "gdi32.dll" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long 

siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 
اين تابع يک پنجره را مخفي مي کند و ارتباط آن را با ساير پروسه ها قطع مي کند ولي برنامه Unload نمي شود
اگر تابع کار خود را با موفقيت به پايان برساند مقدار بازگشتي يک عدد غير صفر و اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر خواهد بود
 
hwnd : هندل پنجره مورد نظر
کد PHP:
Private Declare Function DestroyWindow Lib "user32.dll" (ByVal hwnd As Long) As Long  
siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 
اين تابع از عنوان يک پنجره يک کپي تهيه مي کند و آن را در يک کنترل گرافيکي نمايش ميدهد
اگر تابع کار خود را با موفقيت به پايان برساند مقدار بازگشتي يک عدد غير صفر و اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر خواهد بود
 
hwnd : هندل پنجره مورد نظر
hdc : هندل بافت گرافيکي مورد نظر
pcRect : محدوده اي که بايد به اندازه آن از Titlebar کپي تهيه شود
un : اين متغير نوع کپي کردن را مشخص مي کند (اگر به چند خصوصيت نياز داشتيد با عملگر OR آنها را با يکديگر جمع کنيد)
DC_ACTIVATE : پنجره را به حالت فعال ترسيم مي کند
DC_NOACTIVATE : پنجره را به حالت غير فعال ترسيم مي کند
DC_ICON : آيکون پنجره را نيز ترسيم مي کند
DC_TEXT : متن پنجره را نيز ترسيم مي کند
DC_GRADIENT : محو تدريجي روي پنجره را نيز ترسيم مي کند
کد PHP:
Private Const DC_ACTIVATE = &H1 
Private Const DC_NOACTIVATE = &H2 
Private Const DC_ICON = &H4 
Private Const DC_TEXT = &H8 
Private Const DC_GRADIENT = &H20 
 
Private Type RECT 
     Left As Long 
     Top As Long 
     Right As Long 
     Bottom As Long 
End Type 
 
Private Declare Function DrawCaption Lib "user32.dll" (ByVal hwnd As Long, ByVal hdc As Long, pcRect As RECT, ByVal un As Long) As Long  
siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 
اين تابع چهار چوب فوکوس را بر روي يک پنجره ترسيم مي کند
اگر تابع کار خود را با موفقيت به پايان برساند مقدار بازگشتي يک عدد غير صفر و اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر خواهد بود
 
hdc : هندل بافت گرافيکي کنترل مورد نظر
lpRect : محدوده اي که بايد فريم در آن ترسيم شود
کد PHP:
Private Type RECT 
     Left As Long 
     Top As Long 
     Right As Long 
     Bottom As Long 
End Type 
 
Private Declare Function DrawFocusRect Lib "user32.dll" (ByVal hdc As Long, ByVal lpRect As RECT) As Long  
siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 
بعد از اينکه تغييراتي در منوهاي يک پنجره داده شد با استفاده از اين تابع مي توان تغييرات را بر روي پنجره مورد نظر اعمال کرد
اگر تابع کار خود را با موفقيت به پايان برساند مقدار بازگشتي يک عدد غير صفر و اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر خواهد بود
 
hwnd : هندل پنجره مورد نظر
کد PHP:
Private Declare Function DrawMenuBar Lib "user32.dll" (ByVal hwnd As Long) As Long  
siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 
اين تابع توانايي چاپ يک متن را رو ي يک پنجره دارد.
گر تابع کار خود را با موفقيت به پايان برساند مقدار بازگشتي يک عدد غير صفر و اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر خواهد بود
 
hdc : هندل بافت گرافيکي پنجره مورد نظر
lpStr : متن مورد نظر
nCount : طول متن مورد نظر
lpRect : چهار چوبي که بايد متن در آن نمايش يابد
wFormat : فرمتي متن بايد تحت آن نمايش يابد. ثابت هاي زير به شما کمک خواهد کرد ( شما مي توانيد مقادير زير را با هم Or کنيد )
DT_LEFT : متن در سمت چپ محدوده rect چاپ مي شود
DT_LEFT : متن در بالاي محدوده rect چاپ مي شود
DT_CENTER : متن در وسط محدوده rect چاپ مي شود
DT_RIGHT : متن سمت راست محدوده rect چاپ مي شود
DT_BOTTOM : متن در پايين محدوده rect چاپ مي شود
کد PHP:
Const DT_LEFT = &H0 
Const DT_TOP = &H0 
Const DT_CENTER = &H1 
Const DT_RIGHT = &H2 
Const DT_BOTTOM = &H8 
 
Private Type RECT 
        Left As Long 
        Top As Long 
        Right As Long 
        Bottom As Long 
End Type 
 
Private Declare Function DrawTextA Lib "user32.dll" (ByVal hdc As Long, ByVal lpStr As String, ByVal nCount As Long, lpRect As RECT, ByVal wFormat As Long) As Long  
siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 
اين تابع يک پنجره ( فرم يا کنترل ) را فعال يا غيرفعال مي کند
گر تابع کار خود را با موفقيت به پايان برساند مقدار بازگشتي يک عدد غير صفر و اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر خواهد بود
 
hwnd : هندل پنجره مورد نظر
fEnabled : اگر صفر باشد پنجره غير فعال و اگر يک باشد پنجره فعال مي شود
کد PHP:
Private Declare Function EnableWindow Lib "user32.dll" (ByVal hwnd As Long, ByVal fEnabled As Long) As Long  
siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 
اين تابع تمام منوهاي باز پنجره جاري را مي بندد
اگر تابع کار خود را با موفقيت به پايان برساند مقدار بازگشتي يک عدد غير صفر و اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر خواهد بود
کد PHP:
Private Declare Function EndMenu Lib "user32.dll" () As Long  
siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 
اين تابع ليست تمام پنجره هاي تحت يک پنجره ديگر را به دست مي آورد
اگر تابع کار خود را با موفقيت به پايان برساند مقدار بازگشتي يک عدد غير صفر و اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر خواهد بود
 
lpEnumFunc : تابعي که بايد ليست پنجره به آن ارسال شود. از کليد واژه AddressOf براي اعلام محل تابع در حافظه استفاده کنيد. (مثال AddressOf EnumWindowsProc). تابع بايد مشابه تابعي که در کد نوشته شده است باشد. تازماني که تابع مقدار True را برگرداند ليست کردن پنجره ها ادامه خواهد داشت
lParam : اين متغير را به دلخواه خود مي توانيد مقدار دهي کنيد. اين متغير عيناً به تابع EnumWindowsProc ارسال خواهد شد
کد PHP:
Private Declare Function EnumWindows Lib "user32.dll" (ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long 
 
Public Function EnumWindowsProc(ByVal hwnd As Long, ByVal lParam As Long) As Boolean 
   ' Put your code here 
   EnumWindowsProc = True 
End Function  
siryahya کاربر طلایی1
|
تعداد پست ها : 158652
|
تاریخ عضویت : اسفند 1389 
اين تابع يک پنجره با مشخصات داده شده را پيدا مي کند
اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر و در غير اينصورت مقدار بازگشتي هندل پنجره مورد نظر خواهد بود
 
lpClassName : نام کلاس پنجره مورد نظر
lpWindowName : نوشته يا Caption مورد نظر
( توجه : هر کدام از متغير ها را که نخواستيد مقدار دهي کنيد با ثابت vbNullString جايگزين کنيد )
کد PHP:
Private Declare Function FindWindowA Lib "user32.dll" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long