On 30/05/2017 07:36, Torsten Bonde Christiansen via Lazarus wrote:
Hi List.

I want to know the placement of the caret (in pixels, not character count) in a TEdit. However i am struggeling to fint a method that will allow me to do so.

If i try to calculate it using the assigned font, I have the problem that TEdit.Font.GetTextWidth always returns the default size (16), since the Font doesn't have a canvas assigned to it.

If you are on windows (and win only), you may be able to use GetCaretPos https://msdn.microsoft.com/en-us/library/windows/desktop/ms648402(v=vs.85).aspx
(That is, if the edit is focused, and has the caret)

On Windows there is only one caret per App, so if the TEdit has it, then GetCaretPos should get the pos for that Edit.

Of course win only, and the Edit needs the focus. (And not tested at all)
--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus

Reply via email to