• پایان فعالیت بخشهای انجمن: امکان ایجاد موضوع یا نوشته جدید برای عموم کاربران غیرفعال شده است

نمونه برنامه های VB6 -آموزش از روی مثال

balabala

کاربر قدیمی پرشین تولز
کاربر قدیمی پرشین تولز
تاریخ عضویت
22 می 2005
نوشته‌ها
8,362
لایک‌ها
5,745
سن
42
محل سکونت
یه خورده اونورتر
خسته نباشید :D امیدوارم همنطوری عالی پیش برید... البته یه توصیه دارم اونم اینه که کد ها رو توی تگ CODE بگذارید:
کد:
اینطوری
(توی ادیتور پیشرفته هست)
 

sinbad68

Registered User
تاریخ عضویت
6 دسامبر 2006
نوشته‌ها
272
لایک‌ها
21
خسته نباشید :D امیدوارم همنطوری عالی پیش برید... البته یه توصیه دارم اونم اینه که کد ها رو توی تگ CODE بگذارید:
کد:
اینطوری
(توی ادیتور پیشرفته هست)

سلام.

خيلي ممنون كه گفتيد.

من خيلي وقت بود دنبال اين مي گشتم.

راستي آقاي balabala به ما افتخار نميديد با هم كار كنيم.
:happy:

حالا اين اديتور را از كجا پيدا كنم.
 

sinbad68

Registered User
تاریخ عضویت
6 دسامبر 2006
نوشته‌ها
272
لایک‌ها
21
متحرک سازی رشته ها:

با سلام.

امروز براتون يك برنامه در مورد متحرک سازی رشته ها براتون مي زارم.

ياد آوري:

برای اینکه توی ویژوال بیسیک بتونیم تشخیص بدیم که حرف مثلا پنجم یه رشته چیه

می تونیم از دستور زیر استفاده کنیم:
mid(string,5,1)
دستور mid در واقع به صورت زیره:
mid(string,m,n)

این دستور یه رشته رو دریافت می کنه و از کاراکتر m ام به بعد به اندازه n کارکتر رو بر

میگردونه. حالا اگه n=1 باشه حرف m ام رشته رو برمی گردونه.

اگه بخواهیم با استفاده از تایمر، رشته رو به صورت حرف به حرف به نمایش در بیاریم،

باید یه رشته کمکی داشته باشیم و همچنین باید یه متغییر تعریف کنیم که هر دفعه

یه دونه زیاد بشه، مثلا i . بعد کاراکتر i ام رو به رشته کمکی اضافه کنیم. اگه i از طول

رشته بیشتر شد، همه چیز از اول شروع میشه. یعنی i میشه صفر و رشته کمکی

هم خالی میشه.

البته این کار رو می تونیم با استفاده از یه تابع دیگه هم انجام بدیم. تابع left که به

صورت زیره:
left(string,n)

این تابع از سمت چپ رشته به اندازه n کاراکتر رو بر میگردونه. پس تنها کاری که باید

بکنیم اینه که یه متغییر تعریف کنیم مثل i و اون متغییر رو یکی یکی اضافه کنیم. بعد

با استفاده از این دستور تا کراکتر i ام رو نمایش بدیم. اگه i از طول رشته بیشتر شد،

i رو صفر می کنیم.

متحرک سازی دوم هم همینطوریه با این تفاوت که وقتی به آخر رشته رسید دوباره

یکی یکی از حروف کم میکنه تا به اولین حرف برسه.


متحرک سازی سوم مثل اون چیزیه که توی برنامه هایی مثل JetAudio می بینید. این

روش رشته رو به سمت چپ حرکت میده. روش کار هم به این صورته که از کاراکتر i

ام به بعد یه رشته، به اندازه مثلا 10 تا کاراکتر نمایش بده. بعد به i یکی اضافه کنه.

برای اینکه اون 10 تا کاراکتر رو نمایش بده باید از حلقه for استفاده کنیم. از i تا i+10

و برای اینکه متغییر این حلقه از طول رشته بیشتر نشه از mod استفاده می کنیم.
 

sinbad68

Registered User
تاریخ عضویت
6 دسامبر 2006
نوشته‌ها
272
لایک‌ها
21
این هم برنامه اش:

3 تا Timer بگيريد.

کد:
Dim str As String
Dim strtemp1 As String, strtemp2 As String, strtemp3 As String
Dim i As Integer, j As Integer, k As Integer, sign As Integer, lenght As Integer

Private Sub Form_Load()
    str = "Sinbad 68"
    strtemp1 = ""
    strtemp2 = ""
    strtemp3 = ""
    i = 1
    j = 1
    k = 1
    lenght = 20
    sign = 1
End Sub

Private Sub Timer1_Timer()
    strtemp1 = strtemp1 & Mid(str, i, 1)
    LBLstr1.Caption = strtemp1
    i = i + 1
    If i = Len(str) + 1 Then
        i = 1
        strtemp1 = ""
    End If
End Sub

Private Sub Timer2_Timer()
    strtemp2 = Left(str, j)
    LBLstr2.Caption = strtemp2
    j = j + sign
    If j = Len(str) + 1 Then
        sign = -1
        j = j - 1
        Timer2.Interval = 50
    ElseIf j = 0 Then
        sign = 1
        j = j + 1
        Timer2.Interval = 200
    End If
End Sub

Private Sub Timer3_Timer()
    strtemp3 = ""
    For z = 1 To lenght
        strtemp3 = strtemp3 & Mid(str, (k + z) Mod Len(str) + 1, 1)
    Next z
    LBLstr3.Caption = strtemp3
    k = k + 1
    If k = Len(str) + 1 Then k = 1
End Sub

فكر نكنم نياز به توضيح باشه.

مي تونيد برنامه رو اجرا كنيد.

فعلا بسه.

بچه ها دانشگاه باز شده از اين به بعد كمتر ميام اينجا.

چون درس هامون خيلي فشرده شده.

ولي براتون مطلب ميزارم.

خواهشا به جاي من يكي ديگه مطلب بزاره تو اين مدت.

فعلا.

باي باي.
 

balabala

کاربر قدیمی پرشین تولز
کاربر قدیمی پرشین تولز
تاریخ عضویت
22 می 2005
نوشته‌ها
8,362
لایک‌ها
5,745
سن
42
محل سکونت
یه خورده اونورتر
سلام.

خيلي ممنون كه گفتيد.

من خيلي وقت بود دنبال اين مي گشتم.

راستي آقاي balabala به ما افتخار نميديد با هم كار كنيم.
:happy:

حالا اين اديتور را از كجا پيدا كنم.
والا من وقت ندارم دیگه وگرنه خوشحالم میشدم :D
ادیتور هم که پیدا کردی خودت :}
ممنون بابت آموزشت
 

sinbad68

Registered User
تاریخ عضویت
6 دسامبر 2006
نوشته‌ها
272
لایک‌ها
21
سلام.

امروز چند تا چيز در مورد توابع api براتون بگم.

روش دسترسی به نام و تعریف ومتغیر های توابع api :

براي استفاده از توابع API در ويژوال بيسيك مي توان از ابزار API VIEWER استفاده كرد.

پس از نصب ويژوال بيسيك به مسير زير رجوع ميكنيم.

start menu -->allprograms-->microsoft visual studio 6-->microsoft visual studio 6 tools-->api text viewer
حال از منوي فايل load text file انتخاب كنيد.درپنجره اي كه باز مي شود فايلwin32api.txt را باز كنيد.

فايل win32api.txt در مسير microsoft visual studio-->common-->tools-->winapi قرار دارد.

در قسمت api type گزينه declares را انتخاب مي كنيم.

در قسمت availabl items نام تمام توابع api را مشاهده مي كنيد.روي نام هر تابع كه دابل كليك كنيد ميتوانيد
نحوه فراخواني و پارامترهاي ورودي و خروجي تابع را در قسمت selected item مشاهده نماييد.

دكمه كپي به منظور كپي كردن تابع انتخابي در قسمت selected item در كليپ برد مي باشد.

اگه مسير برعكسه كپي كنيد درست ميشه.
 

sinbad68

Registered User
تاریخ عضویت
6 دسامبر 2006
نوشته‌ها
272
لایک‌ها
21
اينم چند تا برنامه با استفاده از توابع api :

باز و بسته كردن درب سي دي رام

براي اين كار ابتدا تابع زير را در قسمت general فرم كد در vb كپي كرده
Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long

حال دو command بر روي فرم ايجاد كنيد.

در command1 كد &mciSendString "set cdaudio door open wait", 0&, 0&,0
در command2 كد &mciSendString "set cdaudio door closed wait", 0&, 0&,

مي تونيد برنامه رو اجرا كنيد.
 

sinbad68

Registered User
تاریخ عضویت
6 دسامبر 2006
نوشته‌ها
272
لایک‌ها
21
قفل كردن صفحه كليد و ماوس به مدت دلخواه :

براي اين كار ابتدا تابع زير را در قسمت جنرال برنامه قرار دهيد.

Private Declare Function BlockInput Lib "user32" (ByVal fBlock As Long) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

حال يك command ايجاد كرده و در قسمت رويداد كليك آن كد زير را وارد كنيد:

DoEvents
BlockInput True 'True=1
Sleep 20000
BlockInput False 'False=0

عدد جلوي sleep مدت زمان قفل بودن صفحه كليد و ماوس را نشان مي دهد.كه در اينجا به طور پيش فرض 20 ثانيه
است.

برنامه رو اجرا كنيد.

براي امروز بسه.

فعلا.

باي باي.
 

sinbad68

Registered User
تاریخ عضویت
6 دسامبر 2006
نوشته‌ها
272
لایک‌ها
21
سلام.

بابا يعني من مطلب نزارم كسي نمي زاره.

يك كم مرام داشته باشيد.

امروز 2 تا برنامه براتون مي زارم.

آموزش ساخت برنامه WindowsMediaPlayer با vb :

ابتدا Ctrl+T را زده و سپس و 2 تا كنترل به نام هاي WindowsMediaPlayer و Common Dialog

انتخاب كرده.سپس يك Command گرفته و كد هاي زير را در آن وارد كنيد.

Private Sub Command1_Click()
CommonDialog1.ShowOpen
WindowsMediaPlayer1.URL = CommonDialog1.FileName
End Sub

مي تونيد برنامه رو اجرا كنيد.

اگه سوالي هست در خدمتم.
 

sinbad68

Registered User
تاریخ عضویت
6 دسامبر 2006
نوشته‌ها
272
لایک‌ها
21
چگونگی گذاشتن موزیک در فرم با دکمه های کنترل کننده :

ابتدا دکمه Ctrl + T را بزنيد و بعد از کادر باز شده گزینه Microsft Multimedia Control را انتخاب
كنيد .

حالا آن را داخل فرم بزاريد و نام آن را به mm تغیر دهيد . و کد زیر را شروع بنويسيد .

()Private sub form_load
mm.visible=true
end sub
()Private Sub form_Click
"mm.filename="C:\myMp3.mp3
"mm.Command="Open
"mm.Command="Play
end sub

در اين قسمت "mm.filename="C:\myMp3.mp3 نام آهنگ و آدرس آهنگ خودتان را بدهيد.

تا بعد.

باي باي.
 

sinbad68

Registered User
تاریخ عضویت
6 دسامبر 2006
نوشته‌ها
272
لایک‌ها
21
با سلام.

امروز سورس يك برنامه رو براتون مي زارم كه با راست كليك روي فرم مي توانيد رنگ دلخواه خود را

برگزينيد.

البته بايد بگم كه بايد منو درست كنيد.

کد:
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
 If Button = 2 Then
      PopupMenu mnucolour
   End If
End Sub

Private Sub mnublack_Click()
frmpop.BackColor = vbBlack
End Sub

Private Sub mnublue_Click()
frmpop.BackColor = vbBlue
End Sub

Private Sub mnugreen_Click()
frmpop.BackColor = vbGreen
End Sub

Private Sub mnured_Click()
frmpop.BackColor = vbRed
End Sub

Private Sub mnuwhite_Click()
frmpop.BackColor = vbWhite
End Sub

Private Sub mnuyellow_Click()
frmpop.BackColor = vbYellow
End Sub

اگه سوالي هست من در خدمتم.

فعلا.

باي باي.
 

sinbad68

Registered User
تاریخ عضویت
6 دسامبر 2006
نوشته‌ها
272
لایک‌ها
21
سلام.

امروز در مورد اين كنترل ها براتون توضيح ميدم.

شما ديگه آخره هر چي مراميد.

کنترل های Check Box و Option Button

از زمانی که با ويندوز کار می کنيد، از کنترلهای Check Box و Option Box استفاده بسياری برده‌ايد.اگر بخواهيم به کاربر (User) اين امکان را بدهيم که از بين چند گزينه، يک ، دو يا چند مورد را انتخاب کند و يا حتی هيچ يک را انتخاب نکند از کنترل Check Box و اگر بخواهيم کاربر، از ميان چند گزينه، يک و فقط يک گزينه را انتخاب کند، از کنترل Option Button (کليدهای راديويی).

اين دو کنترل مشخصه ای به نام Value دارند که از صفر يا يک بودن مقدار آن، می توانيم به انتخاب نشده بودن و انتخاب شده بودن آن گزينه خاص، پی ببريم. لذا اگر برروی يک فرم چند Check Box وجود داشت، می تواند Value هر يک از آنها صفر يا يک باشد، اما اگر برروی فرمی، چند Option Button وجود داشت، تنها يکی از آنها می تواند Value برابر يک داشته باشد و وقتی کاربر، يکی ديگر را انتخاب می کند، به طور خودکار، Value قبلی صفر و Value کنترل انتخاب شده، يک می شود.

VB دارای دو ثابت (Constant) به نامهای VBChecked و VBUnchecked می باشد که به ترتيب برابر يک و صفر می باشند که می توانيم مقدار Value کنترلهای ذکر شده را با اين ثوابت مقايسه کنيم.
کنترل Check Box ، علاوه بر دو مقدار صفر و يک برای مشخصه Value ، مقدار برابر 2 نيز برای آن دارد که اگر به آن Set شود، اين کنترل، خاکستری رنگ (Gray) می شود که معمولاً در ويندوز نشان از پيش فرض بودن دارد. همچنين کنترل مذکور، مشخصه ای هم به نام Style دارد که اگر مقدار آن را از صفر به يک تغيير دهيم، شکل Check Box به شکل دکمه ای در می آيد که يک بودن مقدار Value، باعث فشرده شدن کليد و صفر بودن آن باعث بالا بودن کليد می‌شود.
 

sinbad68

Registered User
تاریخ عضویت
6 دسامبر 2006
نوشته‌ها
272
لایک‌ها
21
مثالی از کنترل های Check Box و Option Button

فرمی شامل يک Text Box و دو Check Box با عنوانهای Bold و Italic درست كنيد که اگر Bold، مارک
خورده بود، متن داخل Text Box به صورت Bold درآيد و اگر Italic مارک خورده بود به صورت Italic.
نام Check Box ها chk بگيريد.
اينم سورس برنامه.
کد:
Private Sub chkBold_Click ()
  IF chkBold.Value = VBchecked then 
    Text1.FontBold = True
  Else
    Text1.FontBold = False
  End IF
End Sub
Private Sub chkItalic_Click ()
  If chkItalic.Value = VBchecked Then
    Text1.FontItalic = True
  Else
    Text1.FontItalic = False
  End IF
End Sub
توجه داشته باشيد که هرگاه کاربر بر روی يک Check Box و يا يک Option Button کليک کند و يا بوسيله کليد Tab ، فوکوس را به آن دهد و روی آن کليد Space bar را بزند، رويداد Click از اين دو کنترل روی خواهد داد.
براي امروز بسه.
تا بعد.
باي باي.
 

JAVAD_ft

Registered User
تاریخ عضویت
30 می 2007
نوشته‌ها
45
لایک‌ها
1
سلام.

بابا يعني من مطلب نزارم كسي نمي زاره.

يك كم مرام داشته باشيد.

امروز 2 تا برنامه براتون مي زارم.

آموزش ساخت برنامه WindowsMediaPlayer با vb :

ابتدا Ctrl+T را زده و سپس و 2 تا كنترل به نام هاي WindowsMediaPlayer و Common Dialog

انتخاب كرده.سپس يك Command گرفته و كد هاي زير را در آن وارد كنيد.

Private Sub Command1_Click()
CommonDialog1.ShowOpen
WindowsMediaPlayer1.URL = CommonDialog1.FileName
End Sub

مي تونيد برنامه رو اجرا كنيد.

اگه سوالي هست در خدمتم.

سلام استاد
خيلي ممنون از تلاشتون
يه سوال داشتم: چطوري ميتونيم يك زمان مشخص از يك فايل صوتي رو با مديا پلير پخش كنيم و با چه دقتي؟
مثلاً اگر URL رو ست كرديم و حالا ميخوايم فايل از 2 دقيقه و 30 ثانيه و 65 صدم ثانيه شروع به خوندن بكنه چيكار بايد بكنيم؟

ممنون
 

ooochike hame

کاربر تازه وارد
تاریخ عضویت
14 سپتامبر 2007
نوشته‌ها
1
لایک‌ها
0
mamnoon az amoozeshhaye advancetoon(afshine ghotbi
ostad che tor mishe barname haye tahte excel ro be soorate exe oonam ba vb tabdil kard ea nevesht?
chon baraye neveshtan barnamehaye hesabdari bayad az moadelate masalan pishrafte ham estefade kard?
mamnoon
 

Shine

Registered User
تاریخ عضویت
3 ژوئن 2007
نوشته‌ها
150
لایک‌ها
12
با سلام به همگی مخصوصآ آقا سعید

من چند روز پیش تو برنامه مولتی مدیام فلش به کار برده بودم و نمی خواستم
که کسی رو فلشم که کلیک می کنه اون منوی لعنتی بیاد بالا
این روشی که استفاده کردم تا حد بسیار زیادی جواب میده
به علاوه اینکه آدم کمی باهاش کنترل پیغام ها رو یاد می گیره

موفق باشید
 

فایل های ضمیمه

  • PeekMessage.zip
    15.7 KB · نمایش ها: 53

Shine

Registered User
تاریخ عضویت
3 ژوئن 2007
نوشته‌ها
150
لایک‌ها
12
سلام به دوستان
ظاهرا از برنامه قبلی که گزاشتم استقبال نشد :(
حالا این رو ببینید بد نیست
مسیج باکس کاملآ فارسی
یه نظری بدید وگرنه دیگه نمی زارما :p
 

فایل های ضمیمه

  • Farsi MsgBox.zip
    2.3 KB · نمایش ها: 69

balabala

کاربر قدیمی پرشین تولز
کاربر قدیمی پرشین تولز
تاریخ عضویت
22 می 2005
نوشته‌ها
8,362
لایک‌ها
5,745
سن
42
محل سکونت
یه خورده اونورتر
ممنونم از همه بچه ها بخاطر گذاشتن سورسای مفیدشون :)
 

Shine

Registered User
تاریخ عضویت
3 ژوئن 2007
نوشته‌ها
150
لایک‌ها
12
ساده ترین راه اسکین کردن فرم با فقط 12 خط کد :eek::D
 

فایل های ضمیمه

  • Transparent.zip
    5.7 KB · نمایش ها: 64

convict

کاربر تازه وارد
تاریخ عضویت
25 اکتبر 2007
نوشته‌ها
3
لایک‌ها
0
سلام
من یه برنامه میخوام که بتونم با تایپ کردن عبارت دلخواه داخل text box ، با فشردن یک دکمه اون عبارت رو به حروف بزرگ و با فشردن یه دکمه ی دیگه همون عبارت رو به حروف کوچیک تبدیل کنم . در واقع همون کاری که change case در word انجام میده .​
 
بالا