با عرض سلام
ميخواستم بدونم چه جوري ميتونم گزينه Undo و Redo رو ايجاد كنم كه با زدن Undo نوشته هاي پاك شده در ريچ
تكست باكس برگردانده شوند و با زدن دكمه Redo عكس اين عمل انجام شود ؟؟؟؟؟؟؟؟؟؟؟؟؟؟
با عرض سلام
ميخواستم بدونم چه جوري ميتونم گزينه Undo و Redo رو ايجاد كنم كه با زدن Undo نوشته هاي پاك شده در ريچ
تكست باكس برگردانده شوند و با زدن دكمه Redo عكس اين عمل انجام شود ؟؟؟؟؟؟؟؟؟؟؟؟؟؟
برای اینکار به دو متغیر نیاز دارید که مقادیر مختلف تکست رو بگیرند !
1- پس اول دو متغیر در بخش جنرال از نوع String تعریف میکنید !
2- در Form و رویداد Load کد زیر را مینوسید تا مقدار اولیه ی تکست وارد متغیر a شود :
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
3- در TextBox و رویداد KeyUp کد زیر را مینوسید تا آخرین عبارتی که وارد کردید به b منتقل شود :
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید4- حالا در دکمه های Undo و Redo به ترتیب کدهای زیر را مینوسید :
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
* با استفاده از Clipboard هم میشه اینکار رو انجام داد ولی فقط برای نگهداری یک مقدار . واسه همین استفاده از متغیر بهتره !
Last edited by M i L @ D; 16-04-2010 at 22:33.
خب این ماله یه حرفه ، نه ؟
یعنی Undo آخرین حرف رو بر می گردونه .
Undo اولین مقدار که در تکست باکس با شروع فرم نمایش داده بشه رو برمیگردونه !نوشته شده توسط Kalanon [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
به نظر من اگر ترتیب کد های بالا رو یکم تغییر بدهید بهتر نتیجه می گیرید،
همان طور که دوستمون گفتند:
در TextBox و رویداد KeyUp کد زیر را مینوسید تا آخرین عبارتی که وارد کردید به b منتقل شود :
حالا برای دکمه Undo کد زیر رو بنویسید:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
و در ادامه اش این کد را بنویسید:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
حالا برای دکمه Redo این کد را بنویسید:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اگر کد ها را به این شکل دنبال کنید دیگر مشکل Form Load نخواهید داشت و Undo و Redo همیشه کار خواهند کرد،کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
برای Undo و Redo کردن چند باره هم می بایست از آرایه استفاده کنید که اگر لازم شد توضیح می دهم.
با تشکر از توضیحات مفید Lee_Young_Ae2027L،
موفق باشید.
پی نوشت: البته این کد کار نمی کند چون زمانی که عمل Undo صورت می گیرد متن فرقی با متن حاضر ندارد، برای جلوگیری از این امر به عنوان مثال اولین کد را (کد مربوط به Keyup) فقط برای کلید SPACE بنویسید تا بتوان کلمه قبلی را Undo کرد.
Last edited by Dark.Lord; 20-04-2010 at 13:41.
دوست من اگه برنامتو درست نگا کنی اشتباهاتی توشه گلم.نوشته شده توسط Dark.Lord [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
این کد کاملش است،نوشته شده توسط SMVV [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
مشکلی ندیدم
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)