PDA

View Full Version : سوال: حذف عمل کپی در Textbox



Apache66
سه شنبه 21 خرداد 1387, 18:42 عصر
سلام دوستان
چگونه میشه در یک textbox عمل کپی را حذف و کاربر نتواند از محتویات آن textbox را در textbox دیگر Paste نماید.
یعنی به طور کلی نه از کلیدهای ترکیبی ctrl+c و ctrl+v و همچنین راست کلیک و دیگر عواملی که منجر به کپی می شوند جلوگیری و از رفتن محتویات textbox به حافظه clipbord جلوگیری شود ؟

mehdad.koulab
سه شنبه 21 خرداد 1387, 20:29 عصر
سلام دوست عزیز اگه متنی که تو textbox است ثابت است میتونین Enabeld مربوط به textboxرو غیر فعال کنین.

Apache66
سه شنبه 21 خرداد 1387, 20:42 عصر
سلام دوست عزیز اگه متنی که تو textbox است ثابت است میتونین Enabeld مربوط به textboxرو غیر فعال کنین.

خیر
متن در داخل textbox ثابت نیست و می تونه مثلا پسورد باشه !

مهران رسا
سه شنبه 21 خرداد 1387, 22:17 عصر
خوب به خاصیت PasswordChar اون یک مقدار بده ...

mehdad.koulab
سه شنبه 21 خرداد 1387, 22:43 عصر
خیر
متن در داخل textbox ثابت نیست و می تونه مثلا پسورد باشه !
همون طور که دوستمون گفتن میتونی به PasswordChar یه مقدار بدی.

Apache66
چهارشنبه 22 خرداد 1387, 09:02 صبح
همون طور که دوستمون گفتن میتونی به PasswordChar یه مقدار بدی.
دوستان عزیز شما متوجه منظور من نشده اید
کلاً می خواهم عمل کپی در textbox انجام نشه . خوب اگه خاصیت passwordcharرا مقدار دهی بکنم قابل کپی خواهد بود.
مثالی که برای پسورد زدم اینه که مثلا اگه جائی از برنامه از کاربر پسورد خواستیم و همان پسورد را در یک textbox دیگر از کاربر بخواهیم (پسورد اولی را تایید کند) کاربر این امکان را نداشته باشد که بتونه از textbox اولی به textbox تاییدی دومی عمل کپی و Paste را انجام بده و همین طور میشه مثال خواستن ایمیل را زد که نمیشه از خاصیت passwordchar استفاده کرد.

f.nabavi
چهارشنبه 22 خرداد 1387, 09:15 صبح
سلام. برای خالی کردن clipboard می توانید در هر textbox که لازم بود از کد زیر استفاده کنید.

Private Sub Text1_LostFocus()
If Clipboard.GetText = Text1.Text Then
Clipboard.Clear
End If
End Sub

مهران رسا
چهارشنبه 22 خرداد 1387, 09:26 صبح
اینطوری هم می تونی .

این رو در رویداد MouseDown کپی کن :



If Button = 2 Then MsgBox "No Right click"


این رو هم در رویداد KeyDown کپی کن :



If KeyCode = 17 Then MsgBox "Not Ctrl"

Apache66
چهارشنبه 22 خرداد 1387, 11:33 صبح
اینطوری هم می تونی .

این رو در رویداد MouseDown کپی کن :



If Button = 2 Then MsgBox "No Right click"
این رو هم در رویداد KeyDown کپی کن :



If KeyCode = 17 Then MsgBox "Not Ctrl"


اینطوری فقط عمل راست کلیک حذف میشه اما عمل کلیدهای ترکیبی ctrl+c و ctrl+v چی؟
f.nabavi مشکلم را حل کرد . کلاً به حافظه clipbord انتقال داده نمیشه

مهران رسا
چهارشنبه 22 خرداد 1387, 12:56 عصر
اینطوری فقط عمل راست کلیک حذف میشه اما عمل کلیدهای ترکیبی ctrl+c و ctrl+v چی؟
f.nabavi مشکلم را حل کرد . کلاً به حافظه clipbord انتقال داده نمیشه

جیگر طلا میشه بگی کد زیر چیکار می کنه ؟ :قلب:




If KeyCode = 17 Then MsgBox "Not Ctrl"

Apache66
چهارشنبه 22 خرداد 1387, 12:59 عصر
جیگر طلا میشه بگی کد زیر چیکار می کنه ؟ :قلب:




If KeyCode = 17 Then MsgBox "Not Ctrl"



بله می دونم . ولی حافظه موقت را پاک کنیم راه حل بهتر و کوتاهتر نیست

Apache66
چهارشنبه 22 خرداد 1387, 13:05 عصر
سلام
با نوشتن کد خالی کردن حافظه موقت در textbox عمل کپی در این textbox انجام نمیشه
ولی یک سوال داشتم اینکه در textbox دومی هم عمل paste انجام نشه . مثلا از برنامه word کلمه ای را کپی و به textbox اولی و یا دومی paste کردیم این عمل انجام نشه ؟

Mbt925
چهارشنبه 22 خرداد 1387, 13:23 عصر
Private Sub Text1_GotFocus()

Clipboard.SetText ""

End Sub