سؤال

أقوم ببناء عنصر تحكم تحرير مخصص يتكون من إضافة رمز على اليسار وزر رمز على اليمين ، كلاهما داخل عنصر التحكم في التحرير.وهذا يتطلب تحويل نقطة البداية من النص (والمؤشر) إلى اليمين بمقدار س من بكسل.وهذا يعني أيضا أنا بحاجة إلى 'الحد' كيف واسعة النص يمكن استخلاصها أيضا ، لإفساح المجال للزر على اليمين.والقصد من ذلك هو توفير كل رمز مخصص على اليسار ، كما هو الحال في المتصفح ، فضلا عن زر 'س' على اليمين لمسح محتويات عنصر التحكم تحرير.

كيفية تعويض Rect من حيث رسم النص والمؤشر في TCustomEdit سليل?

هل كانت مفيدة؟

المحلول

إذا كنت تستخدم نسخة أحدث من دلفي ، يجب أن يكون هناك بالفعل السيطرة تبوتونيديديت ويمكن القيام بعملك.

إذا لم يكن كذلك ، أعتقد أنه يمكنك إرسال رسالة إمسيتمارجينز إلى تكوستوميديت الخاص بك لتعيين الهامش الأيسر والأيمن.

SendMessage(CustomEdit.Handle, EM_SETMARGINS, EC_LEFTMARGIN or EC_RIGHTMARGIN, MakeLong(LeftMargin, RightMargin));
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top