PDA

View Full Version : سوال: کد اسکی 13 (Enter) + کد اسکی 9 (TAB) در EDITBOX



بمب منطقی
سه شنبه 22 مرداد 1387, 17:06 عصر
با سلام خدمت دوستان و اساتید بخش VC :
بنظر میرسه بعد از زدن کلید Enter در EditBox در حالت MultiLine ، کد 13 در edit درج نمیشه و فقط کنترل به خط بعدی منتقل میشه و هم اینکه از کلید Tab هم نمیشه استفاده کرد(برای درج 8 فضای خالی) چون هر وقت که TAB رو میزنم عوض درج کد اسکی 9 و انتقال کنترل به 8 نقطه بعد، کنترل به Object بعدی منتقل میشه. برای حل این مشکل چیکار کنم.
در صورت امکان نمی خوام مشکل با توابع MFC حل بشه بلکه می خوام امکان درج این دو کد اسکی تو Edit فراهم بشه.
در ضمن پروژه بصورت MFC ایجاد شده.

با تشکر فراوان

بمب منطقی
پنج شنبه 24 مرداد 1387, 13:26 عصر
کسی نبود؟!! حالا اگه اینکار تو edit استاندارد VC امکان پذیر نیست کامپاننتی سراغ دارین که بشه باهاش اینکار رو کرد؟ و یا حالا اگه از خیر کلاسیک بگذریم با MFC چطور میشه مشکل رو حل کرد؟

Nima_NF
پنج شنبه 24 مرداد 1387, 15:55 عصر
برای Enter می توانید خط به خط از EditBox بخوانید (با استفاده از GetLineCount و GetLine ) و در بافر ذخیره کنید به علاوه اینکه یک کارکتر 'n\' در انتهای هر خط اضافه کنید.

برای Tab در EdiBox ها باید از Ctrl+Tab استفاده کنید.
در هر حال اگر قابلیت جدیدی می خواهید باید خودتان EditBox را سفارشی کنید، مثلا با زدن کلید tab یک 't\' اضافه کنید .
(نرم افزارهای مخصوص تایپ همه چیز را خودشان سفارشی طراحی می کنند)

ضمنا اگر از کنترل Rich Edit نیز به جای EditBox معمولی استفاده کنید قابلیت های بسیار بیشتری خواهید داشت.