تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 3 از 3 اولاول 123
نمايش نتايج 21 به 30 از 30

نام تاپيک: آموزش Api در VB

  1. #21
    داره خودمونی میشه sajjad_3piz's Avatar
    تاريخ عضويت
    Jul 2008
    محل سكونت
    کرج
    پست ها
    26

    پيش فرض جلسه هفتم

    تابع GetActiveWindow :
    این تابع دستگیره پنجره فعال را بر می گرداند .
    اصل تابع :
    Public Declare Function GetActiveWindow Lib "user32" Alias "GetActiveWindow" () As Long
    پارامتر ها :
    این تابع هیچ پارامتری ندارد .
    خروجی :
    خروجی این تابع از نوع عددی بوده و شامل دستگیره پنجره فعال می باشد . اگر تابع کارش را ناقص انجام بدهد مقدار صفر یا Null برگردانده می شود .


    تابع SetActiveWindow :

    کار این تابع دقیقا بر عکس تابع GetActiveWindow می باشد . این تابع پنجره فعال را مشخص می کند . توجه داشته باشید که فعال شدن به معنی Fouus شدن روی آن پنجره نیست .
    اصل تابع :
    Public Declare Function SetActiveWindow Lib "user32" Alias "SetActiveWindow" (ByVal hwnd As Long) As Long
    پارامتر ها :
    hwnd : این پارامتر از نوع عددی بوده و شامل دستگیره پنجره ای می باشد که می خواهیم فعال شود .
    خروجی :
    اگر مقدار خروجی برابر یک باشد تابع کار خود را به خوبی انجام داده است و اگر به درستی انجام ندهد مقدار صفر برگردانده می شود .


    تابع GetWindowText :
    کار این تابع از جهتی برعکس تابع FindWindow می باشد از این رو که در تابع FindWindow ما عنوان پنجره مورد نظر را در اختیار داشتیم و دستگیره آن را نیاز داشتیم ولی این تابع دستگیره در اختیار است و می خواهیم عنوان پنجره را بدست آوریم .
    اصل تابع :
    Public Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
    پارامتر ها :
    hwnd : این پارامتر از نوع عددی بوده و شامل دستگیره پنجره ای می باشد که می خواهیم عنوان (Caption) آن را بدست آوریم .
    lpString : این پارامتر از نوع رشته بوده و عنوان پنجره را در خود ذخیره می کند .
    cch : این پارامتر از نوع عددی بوده و تعداد کاراکترهایی را که از عنوان باید نمایش داده شوند مشخص می کند .
    خروجی :
    اگر تابع کار خود را به خوبی انجام دهد مقدار خروجی تابع برابر با تعداد کاراکتر هایی می باشد که در متغیر IpString قرار گرفته است و اگر تابع کارش را ناقص انجام دهد مقدار صفر را بر می گرداند .


    تابع GetWindowTextLength :
    این تابع طول رشته عنوان یک پنجره را برمی گرداند .
    اصل تابع :
    Public Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal hwnd As Long) As Long
    پارامتر ها :
    hwnd : این پارامتر از نوع عددی بوده و شامل دستگیره پنجره ای می باشد که می خواهیم طول رشته آن پنجره را بدست آوریم .
    خروجی :
    اگر تابع کار خود را به خوبی انجام دهد مقدار خروجی تابع برابر با تعداد کاراکتر های عنوان پنجره مورد نظر می باشد و اگر تابع کارش را ناقص انجام دهد مقدار صفر را بر می گرداند .


    تابع SetWindowText :
    کار این تابع دقیقا برعکس تابع GetWindowText می باشد با استفاده از این تابع می توان عنوان یک پنجره را تغییر داد .
    اصل تابع :
    Public Declare Function SetWindowText Lib "user32" Alias "SetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String) As Long
    پارامتر ها :
    hwnd : این پارامتر از نوع عددی بوده و شامل دستگیره پنجره ای می باشد که می خواهیم عنوان آن را تغییر دهیم .
    lpString : این پارامتر از نوع رشته بوده و شامل عنوان جدید پنجره مورد نظر می باشد .
    نکته : این تابع دقیقا از پیغام WM_SETTEXT استفاده می کند طریقه استفاده از این پیغام ها در قسمت Message ها توضیح خواهم داد . مثل تابع SendMessage که دوستان هم در خواست کردند .
    خروجی :
    اگر تابع کار خود را به خوبی انجام دهد مقدار خروجی تابع برابر یک می باشد و اگر تابع کارش را ناقص انجام دهد مقدار صفر را بر می گرداند .

    مثال :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    رفقا در این مثال به دو CommandButton یا همون دکمه خودمون و یک TextBox احتیاج داریم .
    در دکمه اولی یک متغیر رشته ای به نام Wn معرفی کردم و بعد در خط دوم به متغیر ، 255 تا فضای خالی کاراکتر دادم ( چون نمی دونیم که چند حرفه ) در خط سوم با تابع GetWindowText می خواهم عنوان پنجره فعالی که با تابع GetActiveWindow بدست می آید را در متغیر Wn قرار داده که با استفاده از تابع GetWindowTextLength تعداد کاراکتر های عنوان پنجره را بدست آورده و در متغیر Wn تاثیر می گذارد و بعد در TextBox چاپ می شود .
    در دکمه دومی یک متغیر رشته ای تعریف کردم و بعد به متغیر مقدار دادم و با استفاده از تابع SetWindowText عنوان پنجره فعال را تغییر می دهم .
    Last edited by sajjad_3piz; 26-08-2008 at 18:13.

  2. این کاربر از sajjad_3piz بخاطر این مطلب مفید تشکر کرده است


  3. #22
    داره خودمونی میشه sepandsystem's Avatar
    تاريخ عضويت
    Aug 2008
    محل سكونت
    Kermanshah
    پست ها
    49

    پيش فرض

    با سلام می خواستم بدونم که می تونم دکمه های برنامه ای کاربردی رو که گرافیکی هم هست وارد ویژوال بیسیک کنم یا نه؟
    اگر میتونم با چه دستوری فراخوانیش کنم چون می خوام از طریق توابع Api واردشون کنم.

  4. #23
    داره خودمونی میشه sajjad_3piz's Avatar
    تاريخ عضويت
    Jul 2008
    محل سكونت
    کرج
    پست ها
    26

    پيش فرض

    سلام رفیق

    من که تا حالا ندیدم که کسی این کارو بکنه

    من فقط از طریق منوی Project و انتخاب گزینه ی Components می تونم دکمه ها رو وارد vb کنم .

  5. #24
    داره خودمونی میشه sajjad_3piz's Avatar
    تاريخ عضويت
    Jul 2008
    محل سكونت
    کرج
    پست ها
    26

    پيش فرض جلسه هشتم

    تابع GetWindow :
    این تابع دستگیره یک پنجره را با استفاده از دستگیره پنجره های دیگر بر می گرداند . از این قبیل می توان به پنجره بعدی پنجره مورد نظر ، پنجره قبلی پنجره مورد نظر و از این موارد اشاره کرد ( به طور ساده تر بگم درون هر پنجره می تواند TextBox و CommandButton و ... موجود باشد اگر شما بخواهید دستگیره این اجزا را بدست آورید باید از دستگیره پنجره اصلی استفاده کنید که این تابع انجام می دهد ) .
    اصل تابع :
    Public Declare Function GetWindow Lib "user32" Alias "GetWindow" (ByVal hwnd As Long, ByVal wCmd As Long) As Long
    پارامتر ها :
    hwnd : این پارامتر از نوع عددی بوده و شامل دستگیره پنجره ای می باشد که می خواهیم دستگیره پنجره های وابسته به آن را بیابیم .
    wCmd : این پارامتر از نوع عددی بوده و مشخص کننده پنجره ای می باشد که می خواهیم دستگیره آن را بیابیم . این پارامتر می تواند مقادیر زیر را داشته باشد :
    - GW_CHILD : این flag پنجره child یا به عبارتی پنجره درون پنجره مورد نظر را به تابع بر می گرداند با مقدار عددی 5 .
    - GW_HWNDFIRST : این flag دستگیره بالاترین پنجره موجود در Task ویندوز را به تابع بر می گرداند با مقدار عددی 0 .
    - GW_HWNDNEXT : این flag دستگیره اولین پنجره بعد از پنجره مورد نظر را به تابع بر می گرداند و با مقدار عددی 2 .
    - GW_HWNDPREV : این flag دستگیره اولین پنجره قبل از پنجره مورد نظر را به تابع بر می گرداند و با مقدار عددی 3 .
    - GW_OWNER : این flag برعکس flag ، GW_CHILD می باشد و دستگیره پنجره مالک (Owner) پنجره مورد نظر به تابع بر می گرداند و با مقدار عددی 4 .
    خروجی :
    خروجی این تابع از نوع عددی بوده و اگر تابع کار خود را به خوبی انجام دهد دستگیره پنجره مورد نظر را بر می گرداند و اگر تابع کارش را ناقص انجام بدهد مقدار صفر یا Null برگردانده می شود .

    مثال :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    تابع GetNextWindow :
    این تابع تقریبا مانند تابع GetWindow با این تفاوت که فقط از دو Flag تابع GetWindow می تواند استفاده کند .
    اصل تابع :
    Public Declare Function GetNextWindow Lib "user32" Alias "GetWindow" (ByVal hwnd As Long, ByVal wFlag As Long) As Long
    پارامتر ها :
    hwnd : این پارامتر از نوع عددی بوده و شامل دستگیره پنجره ای می باشد که می خواهیم دستگیره پنجره های بعدی و قبلی آن را بدست آوریم .
    wCmd : این پارامتر از نوع عددی بوده و مشخص کننده پنجره ای می باشد که می خواهیم دستگیره آن را بیابیم ( قبلی یا بعدی ) این پارامتر می تواند مقادیر زیر را داشته باشد :
    - GW_HWNDNEXT : این flag دستگیره پنجره بعدی پنجره مورد نظر را به تابع بر می گرداند با مقدار عددی 2 .
    - GW_HWNDPREV : این flag دستگیره پنجره قبلی پنجره مورد نظر را به تابع بر می گرداند و با مقدار عددی 3 .
    نکته : منظور از پنجره بعدی پنجره ای است که در لیست پنجره های ویندوز درون حافظه در مکان پایین تری از پنجره مورد نظر ما قرار دارد و منظور از پنجره قبلی ، پنجره ای است که در مکان بالاتری از پنجره مورد نظر ما قرار دارد .
    خروجی :
    خروجی این تابع از نوع عددی بوده و اگر تابع کار خود را به خوبی انجام دهد دستگیره پنجره مورد نظر را بر می گرداند و اگر تابع کارش را ناقص انجام بدهد مقدار صفر یا Null برگردانده می شود .

    مثال :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    تابع IsWindow :
    این تابع مشخص می کنه پنجره ای که دستگیرش برای آن مشخص شده وجود داره یا نه ؟
    اصل تابع :
    Private Declare Function IsWindow Lib "user32" Alias "IsWindow" (ByVal hwnd As Long) As Long
    پارامتر ها :
    hwnd : این پارامتر از نوع عددی بوده و شامل دستگیره پنجره ای می باشد که می خواهیم بدانیم وجود داره یا نه .
    خروجی :
    خروجی این تابع از نوع عددی بوده و اگر پنجره وجود داشته باشد مقدار 1 و اگر وجود نداشته باشد مقدار 0 بر گردانده می شود .


    تابع IsWindowVisible :
    این تابع وضعیت نمایی یک پنجره را بر می گرداند .
    اصل تابع :
    Private Declare Function IsWindowVisible Lib "user32" Alias "IsWindowVisible" (ByVal hwnd As Long) As Long
    پارامتر ها :
    hwnd : این پارامتر از نوع عددی بوده و شامل دستگیره پنجره ای می باشد که می خواهیم وضعیت نمایی آن را بدانیم .
    خروجی :
    خروجی این تابع از نوع عددی بوده و اگر پنجره قابل دیدن باشد (Visible) ، مقدار یک و در غیر این صورت مقدار صفر برگردانده می شود .

    تابع IsIconic :
    این تابع مشخص می کند که یک پنجره در حالت Minimize قرار دارد یا نه .
    اصل تابع :
    Private Declare Function IsIconic Lib "user32" Alias "IsIconic" (ByVal hwnd As Long) As Long
    پارامتر ها :
    hwnd : این پارامتر از نوع عددی بوده و شامل دستگیره پنجره ای می باشد که می خواهیم وضعیت آن را چک کنیم .
    خروجی :
    خروجی این تابع از نوع عددی بوده و اگر پنجره مورد نظر در حالت Minimize باشد ، مقدار یک و در غیر این صورت مقدار صفر برگردانده می شود .

    مثال :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  6. این کاربر از sajjad_3piz بخاطر این مطلب مفید تشکر کرده است


  7. #25
    اگه نباشه جاش خالی می مونه atifazi's Avatar
    تاريخ عضويت
    Apr 2008
    محل سكونت
    پشت کامپیوتر
    پست ها
    155

    پيش فرض

    سلام دوستان . چگونه ميشه مسير فعال را از ريق كد وي بي پيدا كرد . مثلا شما در مسير c:\my book قرار داريد. اين مسير را از طريق كد ويبي چگونه پيدا كنيم . يعني هرجا رفتيم اون مسير را ويبي چاپ كنه . متشكرم

  8. #26
    داره خودمونی میشه sajjad_3piz's Avatar
    تاريخ عضويت
    Jul 2008
    محل سكونت
    کرج
    پست ها
    26

    پيش فرض

    سلام فقط با تابع send message میشه این کارو کرد . خودم اتفاقا کد شو نوشتم برای یه کرم .

    برات میذارم رو وب .

  9. #27
    داره خودمونی میشه sajjad_3piz's Avatar
    تاريخ عضويت
    Jul 2008
    محل سكونت
    کرج
    پست ها
    26

    پيش فرض

    حتما برات پیداش می کنم

  10. #28
    کاربر فعال انجمن گنو لینوکس V i r u s e r's Avatar
    تاريخ عضويت
    Jan 2008
    محل سكونت
    bin/
    پست ها
    2,086

    پيش فرض

    سلام
    در مورد Regqueryvalue و دیگر توابع رجیستری توضیح بدبد که دیگه عالی میشه

  11. #29
    در آغاز فعالیت
    تاريخ عضويت
    Jan 2008
    پست ها
    1

    پيش فرض

    سلام [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] .
    چطور میشه پنجره فعال رو توی ویندوز مشخص کرد.
    البته با توابع api .با Ge activewindow نشد،0 بر می گردونه.
    با Getwwindow میشه پنجره ای که بالای همه پنجره هاست رو گرفت ولی ممکنه فعال نباشه(focus روش نباشه).
    Thank u.

  12. #30
    پروفشنال rouzbeh_ziafati's Avatar
    تاريخ عضويت
    Dec 2007
    پست ها
    505

    پيش فرض Api تشخیص پرینت گرفتن

    در یک فروم خارجی سوال کردم و بهم این لینک رو دادند . اما اصلا نمی دونم این توابع چطور کار می کنند و کجا باید ازشون استفاده کرد ؟!
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

    قصدم اینکه بفهمم چندبار از گزارش print گرفته میشود و تنها راه اینطور که معلومه استفاده از API هاست .

    چطور میشه تشخیص داد که در گزارش گیری از طریق دیتا ریپورت Datareport کاربر از گزارش پرینت گرفته ؟

صفحه 3 از 3 اولاول 123

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •