تبليغاتX
سورس کدهای ویژوال بیسیک - برنامه نمایش تصویر

سورس کد های رایگان ویژوال بیسیک ؛ آموزش حرفه ای؛ API و ...





برنامه نمایش تصویر 

در ابتدا از دوستانی که با نظرات خود ما را در ادامه کار دلگرم می کنند تشکر کنم.

از اشیاء زیر با نام گفته شده برای برنامه استفاده کنید.

 

کار شئ

نام شئ

نوع شئ

نمایش تصویر

imgPreview

Image Listbox

نمایش لیست درایوهای موجود

drvImage

Drive Listbox

نمایش دایرکتوری های موجود در درایو

dirImage

Directory Listbox

نمایش فایل های موجود در دایرکتوری

filImage

File Listbox

ذخیره فایل هایی که قبلا باز شده

lstHistory

Listbox

محدود کردن فایل به پسوندهای خاص

cboFilter

Combobox

گزینش روش نمایش

(optPreview(0

Option Button

عکس نشان داده شود یا خیر؟

chkPreview

Check Box

               نمایش آدرس کامل فایل

txtAddress

Text Box

دربردارنده ی دکمه های انتخابی

fraPreview

Frame

گزینش روش نمایش

(optPreview(1

Option Button

عکس در اندازه واقعی باشد یا خیر؟

ChkStretch

Check Box

 

شکل کلی برنامه من اینطور است به سلیقه ی خود آن را تغییر دهید.

 

جهت ارتباط سه کنترل Drive,Directory و File Listbox کدهای زیر را در برنامه اضافه می کنیم:

()Private Sub DirImage_Change

FilImage.Path = DirImage.Path

End Sub

 

()Private Sub DrvImage_Change

DirImage.Path = DrvImage.Drive

End Sub

خاصیت Style کنترل cboFilter را برابر 2-Drop Down List قرار دهید.این کار باعث می شود تا فقط گزینه ای قابل انتخاب باشد و خود کاربر نمی تواند در کنترل بنویسد.

در کد زیر هنگامی که فرم بارگذاری شد متن های زیر به کامبوباکس اضافه می شود:

()Private Sub Form_Load

"CboFilter.AddItem "*.bmp;*.jpg;*.gif

"CboFilter.AddItem "*.jpg

"CboFilter.AddItem "*.gif

"CboFilter.AddItem "*.bmp

CboFilter.ListIndex = 0

OptPreview(0).Value = True

ChkPreview.Value = 1

ChkStretch.Value = 1

ImgPreview.Stretch = True

End Sub

متد List Index در بالا باعث می شود اولین گزینه انتخاب و نمایش داده شود.

در رویداد کلیک مربوط به cboFilter  بنویسید (توجه کنید رویداد Click نه Change):

FilImage.Pattern = CboFilter.Text

شرح کد فوق: هنگامی که یک گزینه از کنترل کامبو انتخاب می شود آن کنترل به عنوان قالب نمایش فایل ها در FilImage تعیین می شود.

تابع Preview را به اینصورت در بالای تمام کدها تعریف کنید:

()Private Sub Preview

Dim pth As String

    pth = FilImage.Path

"\" + If Right(pth, 1) <> "\" Then  pth = pth

Pth=pth + FilImage.FileName

TxtAddress.Text=pth

LstHistory.Additem pth

(ImgPreview.Picture = LoadPicture(pth

End Sub

کد زیر هم برای  کنترل File Listbox:

()Private Sub FilImage_Click

If ChkPreview.Value And OptPreview(0).Value Then

            Preview

End If

End Sub

در بالا اگر ChkPreview تیک خورده باشد و (OptPreview(0 انتخاب شده باشد آنگاه روال فراخوانی می شود.

در رویداد دابل کلیک کنترل FilImage هم کد زیر را وارد کنید:

()Private Sub FilImage_DblClick

If ChkPreview.Value And OptPreview(1).Value Then

Preview

End If

End Sub

کد زیر را هم برای جعبه متن بنویسید:

()Private Sub LstHistory_Click

((ImgPreview.Picture = LoadPicture(LstHistory.List(LstHistory.ListIndex

End Sub

1-      بعضی از ابزارها مقداردهی اولیه مناسبی ندارند آنها را مقدار دهی اولیه کنید.

2-      وقتی chkPreview چک نخورده فریم و کنترل Image را پنهان کند.

3-      وقتی ChkPreview چک نخورده کنترل LstHistory هم عکسی نمایش ندهد.

4-      بجای جعبه متن می توانید از برچسب استفاده کنید.


مشکلات دوستان::

امین:

چرا Preview را خطا می گیرد؟؟


جواب:

دوست عزیز حتما شما روال Preview را در برنامه تعریف نکرده اید و برنامه دنبال روال می گردد ولی چیزی پیدا نمی کند در ضمن این روال باید در بالای برنامه تعریف شود.

 

نوشته شده توسط علیرضا | لینک ثابت | موضوع: |