نمایش نتایج 1 تا 8 از 8

نام تاپیک: اضافه کردن یک رکورد در vb

  1. #1

    اضافه کردن یک رکورد در vb

    سلام دوستان

    من یک برنامه با vb6 نوشتم و از بانک access استفاده کردم.

    در برنامه یک dbgrid گذاشتم که اطلاعاتی را با توجه به پرکردن text box نمایش می دهد.

    می خواهم از یک رکورد نشان داد شده در dbgrid کپی گرفته و آنر ا در همانجا paste کنم.

    به عبارتی می خواهم که یک رکورد جدید اضافه کنم ولی با copy و paste کردن.

    لطفا راهنمایی بفرمائید.



    متشکرم.

  2. #2
    کاربر دائمی
    تاریخ عضویت
    تیر 1384
    محل زندگی
    localhost
    پست
    269
    با سلام
    دوست عزیز ابتدا باید با دستور : ( متن مورد نظر) Clipboard.SetText متن مورد نظر رو به کلیپ برد انتقال بدی
    بعد در جایی که می خوای قرار بدی با دستور Text1.Text = Clipboard.GetText که در اینجا تکست1 به فرض مثال نوشته شده است پیس کنی

  3. #3

    کپی در dbgrid

    سلام

    دستور جنابعالی کاملا درست است.

    ولی همانطور که در بالا گفته شده ، من می خواهم یک سطر انتخاب شده از dbgrid را به clipboard فرستاده و سپس در انتهای dbgrid آن را paste نمایم.

    لطفا در این زمینه مرا راهنمایی کنید.

    متشکرم.

  4. #4
    کاربر دائمی
    تاریخ عضویت
    تیر 1384
    محل زندگی
    localhost
    پست
    269
    با سلام
    دوست عزیز من درست متوجه سوالت نشدم ولی این قطعه کد بر هر سطر از گرید که کلیلک می کنی محتوای تمام سطررو به کلیپ برد می فرسته

    Clipboard.Clear
    For i = 0 To 2
    Clipboard.SetText Clipboard.GetText & " " & Dg.Columns(i).Text
    Next

    که 2 در اینجا تعداد ستونهای گرید هستش

  5. #5

    روش paste کردن در dbgrid

    سلام

    دستت در نکنه

    کد شما کاملا در ست است و جواب می دهد ( برا ی کپی در clipboard)
    با کد شما سطر dbgrid را کپی کردم و برای paste کردن از کد زیر استفاده کردم.

    For i = 0 To 2
    DBGrid1.Columns(i).Text =Clipboard.GetText
    next i

    ولی هرچه تلاش کردم نشد.چون اطلاعات کل clipboard را در هر ستون کپی می کند.
    یعنی اطلاعات ستون 0 تا 2 را در ستون های 0 تا 2 کپی میکند.

    نمی دانم روش paste کردن در dbgrid چگونه است.

    لطفا راهنمایی بفرمائید.

  6. #6
    کاربر دائمی
    تاریخ عضویت
    تیر 1384
    محل زندگی
    localhost
    پست
    269
    با سلام
    دوست عزیز دستوری که شما بکار بردین اشتباهه
    برای اینکه بتونین هر کلمه رو داخل یک سلول قرار بدین می توونین از اون فضای خالی که بین کلمات است استفاده کنین وبا استفاده از توابع رشته ای کلمات را از درون رشته استخراج کنین و درهر سلول کلمه مناسب با اون رو قرار بدین
    cb=clipboard.gettext
    (for i=1 to len(cb
    (x=mid(cb,i,1
    if x="" then
    (w=mid(cb,1,i-1
    end if
    next

    البته این دستورات فقط اولین کلمه رو استخراج می کنه و به راحتی می توونی با کمی تغییر واسه همه کلمات همین کارو کنی.چون من در حال حاضر روی کامپیوترم VB ندارم و این دستورات رو همین جا نوشتم.اگه اشتباه بود خودت اصلاح کن

  7. #7
    دستور جنابعالی درست و به شرطی کار می کند که در ستون یک کاراکتر و یا تعداد آنها همیشه ثابت ( 2 یا 3 و یا ...) باشد.

    ولی 3 تا از ستون های grid من دارای تعداد کاراکتر های متفاوتی است. یعنی ممکن است یکبار 5 کاراکتر باشد و بار دیگر 25 کاراکتر.

    چه راه حلی برای این کار دارید.

    آیا این روش کپی از اطلاعات و پیست کردن آن مشکل مرا حل خواهد کرد.

    امیدوارم د ر کل منظور من را فهمیده باشی که چه کا ر می خواهم بکنم.

    متشکرم.

  8. #8
    کاربر دائمی آواتار ehsan_ansaripoor
    تاریخ عضویت
    تیر 1384
    محل زندگی
    isfahan
    پست
    706
    دوست عزیز چرا برای اینکار از دستورات SQL و کار با بانک اطلاعاتی استفاده نمی کنی به این ترتیب:
    insert into Table (filed1,filed2) select filed1,filed2 from table where filed1=textbox
    یا با اضافه کردن دوباره رکورد به داخل Table با دستورات Vb

قوانین ایجاد تاپیک در تالار

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