چه جوری می تونم برای یرنامه کلید میانبر ctrl+z (undo( را ایجاد کنم؟؟
چه جوری می تونم برای یرنامه کلید میانبر ctrl+z (undo( را ایجاد کنم؟؟
سلام
بسته به برنامت باید کارهایی که توش انجام می دی رو log کنی و بعد وقتی کاربر ctrl+z رو زد باید آخرین عملی که تو log file هست رو برگردونی .
برای تعریف میانبر هم اگه برنامت منو داره می تونی یک کلید توش بذاری و هات کی شو برابر ctrl+z قرار بدی ، البته حتما راه های بهتری هم وجود داره !!!
ببین شما باید با استفاده از یک فایل یا یک جدول در دیتابیست بسته به نوع برنامت کارهایی که کاربر می کنه رو ذخیره کنی مثلا اگر برنامت ویرایش متنه و کاربر رنگ جایی از متنو تغییر داد ، این تغییرو ذخیره کنی به همراه حالت اولیه بعد اگه کاربر خواست برگرده به عقب آخرین تغییر ایجاد شده رو از فایل بخونی و برگردونی .
حالا بگو برنامت چیه شاید بیشتر بشه مطلب رو باز کرد !!!
برنامه من ویرایشگر تصویره یه چیزی مثل فتوشاپ
ممنون می شم اگه راهنمایی کنید
با استفاده از این کد می تونی تشخیص بدی که کلید های Ctrl+z فشار داده شده است یا نه
در داخل متد KeyUp مر بوط به فرم برنامت
private void MainFrm_KeyUp(object sender, KeyEventArgs e)
{
if (e.Control && e.KeyCode == Keys.Z)
{
//your code here
}
}
می شه لطف کنید کد log file را بگید
یه نگاه به این لینک بنداز .
http://www.computing.net/answers/pro...n-c/11625.html
یه سوالم داشتم ، در حال کار با picture فکر نمی کنم فوکوس روی فرم باشه بنابراین فکر نمی کنم رویدادی از فرم صدا زده بشه ، درسته ؟با استفاده از این کد می تونی تشخیص بدی که کلید های Ctrl+z فشار داده شده است یا نه
در داخل متد KeyUp مر بوط به فرم برنامت
کد:
private void MainFrm_KeyUp(object sender, KeyEventArgs e) { if (e.Control && e.KeyCode == Keys.Z) { //your code here } }
در صورتی که خاصیت KeyPreview True باشه کار میکنه