PDA

View Full Version : جلوگیری از کپی کردن ادیت!



1485159
جمعه 18 اردیبهشت 1388, 23:32 عصر
چطوری میتون که نظارم از یک اجیت کپی یا پست بشه و فقت بشه که تایپ کرد!؟..
ممنون

accpascal
جمعه 18 اردیبهشت 1388, 23:47 عصر
فکر می کنم رکورد غلط املایی را شکستی!!!!!!!!
من 5 تا پیدا کردم( در یک جمله کوتاه)
البته با عرض معذرت
ضمنا جواب را هم نمی دانم اگر کسی جواب بدهد من هم استفاده می کنم

مجتبی تاجیک
شنبه 19 اردیبهشت 1388, 00:03 صبح
1. یونیت ClipBrd رو به uses اضافه کنید .
2. در رویداد KeyUp و MouseUp ادیت مورد نظر کد زیر رو بنویسید :

ClipBoard.Clear;

علی کشاورز
شنبه 19 اردیبهشت 1388, 00:36 صبح
در رویداد KeyUp و MouseUp ادیت مورد نظر کد زیر رو بنویسید
اگر کاربر بیچاره قبلا متنی را در Clipboard ذخیره کرده باشه، و متوجه بشه با شروع تایپ کردن در Edit مورد نظر، متنش از Cliboard حذف شده، چه حالی بهش دست میده؟!


جلوگیری از کپی کردن ادیت!
یک کامپوننت جدید از روی TCustomEdit بسازید، و در آن Message Handlerهایی برای پیام های WM_COPY و WM_PASTE در آن ایجاد کنید، تا هر زمان کاربر خواست متنی را در داخل کامپوننت شما Copy یا متنی یا متنی را در آن Paste کند، شما متوجه بشید، و در صورت لزوم، از آن جلوگیری کنید. یک نمونه کد که از این روش استفاده کرده، در لینک زیر موجود است (البته برای Memo):

http://www.tek-tips.com/faqs.cfm?fid=6272

مجتبی تاجیک
شنبه 19 اردیبهشت 1388, 07:02 صبح
اگر کاربر بیچاره قبلا متنی را در Clipboard ذخیره کرده باشه، و متوجه بشه با شروع تایپ کردن در Edit مورد نظر، متنش از Cliboard حذف شده، چه حالی بهش دست میده؟!
:قهقهه:هیچ کاری نمیتونه بکنه به جز ناسزا گفتن به برنامه نویس برنامه :قهقهه:
من فکر اینجاشو نکرده بودم ، آقای کشاورز درست میگن .

مجتبی تاجیک
شنبه 19 اردیبهشت 1388, 07:13 صبح
:متفکر:یه راه حل به ذهنم رسید ، میتونید کد رو به این شکل تغییر بدید :
" متغییر Temp رو از نوع رشته تعریف کنید "


Temp:=ClipBoard.AsText;
if Temp=Edit1.Text then ClipBoard.Clear;

حالا اگر کاربر متنی به جز متن موجو در Edit رو کپی کرده باشه پاک نمیشه ولی اگه متن Edit رو کپی کرده باشه پاک میشه .

1485159
شنبه 19 اردیبهشت 1388, 10:16 صبح
هر دو کدی که شما گذاشتید در دلفی 2009 کار نمیکنه!!!!
ممنون.

مجتبی تاجیک
شنبه 19 اردیبهشت 1388, 18:31 عصر
هر دو کدی که شما گذاشتید در دلفی 2009 کار نمیکنه!!!!
یونیت ClipBrd رو به uses اضافه کنید ، من خودم این کد رو با دلفی 2009 برای شما نوشتم و تست کردم .