Форум программистов
 
Расширенный поиск
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail



Ответ
 
Опции темы
Старый 22.11.2016, 22:03   #1
Replicant
Форумчанин
 
Аватар для Replicant
 
Регистрация: 17.08.2009
Сообщений: 133
Репутация: 74
По умолчанию Координаты коретки RichEdit

Необходимо узнать координаты коретки RichEdit в пиксилях относительно высоты и ширины компонента.
CaretPos.X не предлагать, он показывает номер строки и символа, а не координаты.
Replicant вне форума   Ответить с цитированием
Старый 22.11.2016, 22:07   #2
Аватар
Модератор
Заслуженный модератор
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Адрес: Северодонецк, Украина
Сообщений: 15,602
Репутация: 5692
По умолчанию

GetCaretPos
__________________
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума   Ответить с цитированием
Старый 22.11.2016, 22:27   #3
Replicant
Форумчанин
 
Аватар для Replicant
 
Регистрация: 17.08.2009
Сообщений: 133
Репутация: 74
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
GetCaretPos
Спасибо.
Replicant вне форума   Ответить с цитированием
Старый 23.11.2016, 10:41   #4
Arigato
СуперПрограммист
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Адрес: Россия
Сообщений: 13,769
Репутация: 3474
По умолчанию

Пример использования через функцию WinAPI:
Код:

uses ShellAPI;

procedure TForm1.Button1Click(Sender: TObject);
var pt: TPoint;
begin
  GetCaretPos(pt);
  ShowMessage('X: ' + IntToStr(pt.X) + '; Y: ' + IntToStr(pt.Y));
end;

К RichEdit не привязано, выдаст позицию коретки относительно левого верхнего угла текущего активного текстового поля.
__________________
E-Mail: arigato.freelance@gmail.com
Arigato вне форума   Ответить с цитированием
Старый 24.11.2016, 05:56   #5
Алексей_2012
t45t
Профессионал
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Адрес: пгт. Балакирево
Сообщений: 1,673
Репутация: 247

icq: 649899888
По умолчанию

почему если ставлю каретку в TEdit на 3 позицию между букв от начала - программа выдает х=14, у=1??
__________________
from dark to light)
Алексей_2012 вне форума   Ответить с цитированием
Старый 24.11.2016, 14:14   #6
Arigato
СуперПрограммист
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Адрес: Россия
Сообщений: 13,769
Репутация: 3474
По умолчанию

Потому что это координаты левого верхнего угла каретки, а не позиция курсора в тексте.
__________________
E-Mail: arigato.freelance@gmail.com
Arigato вне форума   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Даны координаты трёх точек, являющихся вершинами некоторого параллелограмма. Найти координаты четвертой вершины. yamato_pm Паскаль 1 18.12.2013 19:42
Абсолютные X,Y координаты курсора в Memo, RichEdit Sergio_O Общие вопросы Delphi 1 30.01.2012 17:36
Загрузка в RichEdit текста из файла, и получение его из RichEdit Byurrer Общие вопросы C/C++ 1 09.04.2011 10:17
RichEdit Координаты Курсора nusik Общие вопросы Delphi 5 25.04.2009 23:24
Возврат коретки Михаил Юрьевич Общие вопросы Delphi 4 03.07.2008 20:36




02:27.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

Покупайте на сайте www.skinon.ru уникальные чехлы и наклейки для телефонов.
купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru