Visual Basic 6.0 translation

Tuesday, December 28, 2010

VB 6.0 - Save/Retrieve Images From Access Database

بسم الله الرحمن الرحيم

طريقة حفظ صورة فى قاعدة يانات اكسس و استرجاعهـــــــــــــا مرة أخرى عن طريف الفيجوال بيزك 6
How to Save/Retrieve Pictures To/From Access DB Using VB 0.6

أولا :
    
    شكل الفورم النهائى
    
  1. قم بتصميم مشروع عبارة عن Form1 و ضع عليها الادوات (Command1 و Image1 و Command2و Command3)
  2. 
  3. وظيفة الـــ Command1 هى حفظ الصورة و بالتالى تكون وظيفة الـــ Command2 هى استرجاع الصورة من قاعدة البيانات و الـــ Command3 لاختيار صورة من الكمبيوتر لعرضها و الــــ Image1 لعرض الصورة المراد حفظها و التى سيتم استرجاعها.
  4. قم بحفظ المشروع
  5. انشاء قاعدة البيانات باسم Mydb.mdb و وضعها فى فولدر المشروع (كما هو دائما متبع)
  6. 
  7. انشاء جدول باسم MyTbl عبارة عن عدد (2) حقل الاول باسم Img نوعه OLE و الثانى باسم ImgSz و نوعه Number Integer
  8. قم بحفظ قاعدة البيانات و الجدول
  9. من المشروع نستدعى مكتبة ADO النسخة 2.8 او اى نسخه
  10. 
  11. المنطقية : ما سنقوم بعمله هو كالاتى ( عمل متغيرين الاول من نوع Long و اسمة ImgLen ووظيفتة هى تخزين قيمة حجم الصورة المراد تخزينها فى قاعدة البيانات , و المتغير الثانى من نوع ()Byte وهو مصفوفة ايضا و اسمة DataByt ووظيفتة هى تخزين قيمة الصورة على شكل Binary ) و بالتالى عند الحفظ فى قاعدة البيانات ستتحول الصورة من على الفورم من صيغة صورة الى ملف Binary يتم تخزينه بقاعدة البيانات بدلالة المتغيرين السابقين و عند استدعاء الصورة سيتم استدعاء القيمتين و لكن ليس الى الفورم مباشرة و لكن عن طريق ملف صورة وسيط بصيغة صورة ليقرأ المتغيرين ثم نحملة على الفورم .
  12. للأسف هذه هى الطريقة السهلة جدا.
  13. سنقوم بوضع اداة DialogBox على الفورم و نسميها Cdl و هى الاداه التى سنقوم عن طريقها باختيار الصورة.
  14. حمل صورة من هنا مثلا و احفظها فى فولدر المشروع مع قاعدة البيانات و ليكن اسم الصورة MyPic و امتدادها JPG
  15. الاكواد بالصور و ستكون مفهومة ان شاء الله .
  16. الكود الاول General Declarations




 14. الكود الثانى () Form_Load




 15. الكود الثالث () Command1_Click
 

16.  الكود الرابع () Command2_Click
17. الكود الخامس () Command3_Click
و شكرا
انتهى الدرس
فى حالة وجود اى ملاحظة الرجاء ضع تعليق و سأعود اليك بأقرب وقت ممكن
مع تمنياتى بقضاء رأس سنه سعيد
اضافة للموضوع :
هذه الطريقة السابقة سيصعب اضافة ازرار (التالى - السابق - الاول - الاخير - تعديل) عليها فهذه الطريقة تناسب عملية الاحفظ و الاسترجاع لصورة واحده أو مجموعة صور و لكن بشروط معينة لن أتحدث عنها , و لكن الطريقة العملية للتعامل مع الصور من و الى قاعدة البيانات الاكسس بالذات هى عن طريق استخدام وسيط و هو الهارد ديسك حيث يتم حفظ الصورة مع الزر (حفظ) داخل الفولدر باسم معين يتم تخزينة بقاعدة البيانات عن طريق الدالة SavePicture و عند استرجاع الصورة من قاعدة البيانات الى الفورم نستخدم الدالة LoadPicture و يكون اسم الصورة التى سيتم تحميلها على الفورم هو نفسه اسم الصورة المخزن بقاعدة البيانات .

و سأقوم برفع مثال قريبا ان شاء الله
ايضا هناك بعض الامثلة الجاهزة المفيدة هنــــــــــــا فقط سجل بمنتهى السهوله


Visual Basic 6.0 Lessons, Tricks, Tutorials and help links :
 

7 comments:

  1. كود الحفظ يظهر رسالة خطا
    رجاء المساعده

    Dim Piclen As Long
    Dim Bytdata As Byte
    Dim Pathf As String
    Dim rs As ADODB.Recordset


    Private Sub Command5_Click()
    On Error Resume Next
    rs.AddNew
    Open Pathf For Binary As #1
    Piclen = LOF(1)
    ReDim Bytdata(Piclen)
    Get #1, , Bytdata
    Close #1
    rs("imgsize") = Piclen
    rs("photo").AppendChunk Bytdata()
    rs.Update
    MsgBox "Êã ÇáÍÝÙ"
    Image1.Picture = LoadPicture("")

    ReplyDelete
  2. ما هى الرساله التى تظهر ؟
    ممكن عمل Print Screen و ارسال الصورة فى تعليق أيضا ....

    ReplyDelete
  3. Hi it's me, I am also visiting this web site daily, this web page is in fact pleasant and the viewers are
    in fact sharing good thoughts.

    Stop by my weblog BradlyDPadon

    ReplyDelete
  4. Thanks for sharing such a pleasant idea, paragraph is fastidious,
    thats why i have read it fully

    my site - LuciusFArrizaga

    ReplyDelete
  5. hello there and thank you for your info – I've definitely picked up anything new from
    right here. I did however expertise several technical issues using this web site,
    as I experienced to reload the web site many
    times previous to I could get it to load correctly.

    I had been wondering if your hosting is OK?
    Not that I'm complaining, but slow loading instances times will often affect your placement in google and can damage
    your quality score if ads and marketing with
    Adwords. Well I'm adding this RSS to my e-mail and could look out for much more of your
    respective exciting content. Make sure you update this again very soon.

    my web page; AshlyAAdjutant

    ReplyDelete
  6. Link exchange is nothing else however it is only placing the other person's weblog link on your page at suitable
    place and other person will also do similar in support of you.


    my weblog - TerrilynSPhaymany

    ReplyDelete
  7. Incredible points. Solid arguments. Keep up the good spirit.


    my site: ColemanPHixson

    ReplyDelete

visual basic 6 source code says (Hi)

Visual Basic Online Course

vb6 (63) Application Development (45) Visual Basic Online Course (45) Online Visual Basic Course (44) Visual Basic Help (44) Visual Basic Programming (42) IT Jobs (39) VB6 developer (38) Visual Basic Course (38) Visual Basic 6.0 (26) Microsoft Visual Basic 6.0 (25) VB6.0 (24) Visual Basic Programmers (24) vb 6.0 (24) visual basic programming tutorial (19) Third lesson (16) Source code download for Visual Basic 6.0 (14) Source code for Visual Basic 6.0 (10) visual basic tutorial (9) Visual Basic 6 (5) Visual Basic Courses (5) Lesson 3 (4) VB 0.6 - TreeView control (4) VB 0.6 With TreeView Control (4) VB6 Course (3) Create ActiveX (2) How to automate MS-Access from Visual Basic 6.0 (2) Add controls at runtime (1) Back up your Database (1) Change ActiveX icon (1) Change screen resolution (1) Create FTP (1) Crystal Reports 4.6 (1) Crystl32.ocx could not be loaded (1) DataGrid Columns re-size (1) Date Calculation (1) DateAdd Function (1) DateDiff function (1) FTP (1) Marquee Title Bar (1) Marquee VB 6.0 TitleBar (1) Method 'Action' of object 'CrystalCtrl' Failed (1) Microsoft Access with Visual Basic 6.0 (1) OpenSchema method (1) Save File Using CommonDilog (1) Track Database path (1) VB 0.6 - Registry (1) VB 0.6 With Registry Editor (1) VB 6.0 Access (1) VB 6.0 OOP (1) VB6 Access2003 ADO Like % (1) VB6 Add Date (1) VB6 Add Time (1) VB6 Date calculation (1) VB6 Subtract Date (1) Visual Basic Remote (1) Win7 (1) Windows7 (1) ms access networking details (1) remote Visual Basic DB (1) rounded and transparent forms (1) vb 0.6 style (1) vb 6.0 Remote Database (1)