PDA

View Full Version : انتقال مکان نما به کاراکتری خاص در EditBox



MNosouhi
چهارشنبه 20 مهر 1384, 22:30 عصر
با سلام
همانطوری که از عنوان مشخصه می خوام مکان نما رو به کاراکتر مثلا 3 منتقل کنم . میشه کمکم کنید؟

szabeh
پنج شنبه 21 مهر 1384, 00:16 صبح
از این کار چه هدفی داری؟ کامل صورت مسئله رو بنویس.

vcldeveloper
پنج شنبه 21 مهر 1384, 04:48 صبح
با استفاده از تابع SetCaretPos می تونید موقعیت مکان نما رو با مقیاس پیکسل تغییر بدید.
اگر می خواید که مکان نما روی حرف سوم در کنترل TEdit قرار بگیره (با فرض اینکه فونت فرم و کنترل Edit یکسان باشند، یعنی Edit1.ParentFont := True ):


var
Str : string;
begin
Str := Copy(Edit1.Text,1,3);
SetCaretPos(Canvas.TextWidth(Str),0);
end;

MNosouhi
پنج شنبه 21 مهر 1384, 11:58 صبح
از کمکتون ممنون آقای کشاورز

Naficy
جمعه 22 مهر 1384, 04:53 صبح
جالب بود. ندیده بودم با پیکسل بشه مختصات مکان نما رو معلوم کرد.
اما فکر می کنم تغییر خصوصیت SelStart کافی باشه. ضمن اینکه برای کار شما هم دقیقتره، هم ساده تر. نه؟