26.05.2018, 22:33 [+3 UTC]
в нашей команде: 2 792 чел. | участники онлайн: 5 (рекорд: 21)

:: РЕГИСТРАЦИЯ

:: задать вопрос

:: все разделы

:: правила

:: новости

:: участники

:: доска почёта

:: форум

:: блоги

:: поиск

:: статистика

:: наш журнал

:: наши встречи

:: наша галерея

:: отзывы о нас

:: поддержка

:: руководство

Версия системы:
7.47 (16.04.2018)

Общие новости:
13.04.2018, 10:33

Форум:
15.05.2018, 18:49

Последний вопрос:
26.05.2018, 16:56

Последний ответ:
26.05.2018, 13:17

Последняя рассылка:
26.05.2018, 18:15

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
27.04.2011, 22:10 »
Ameno
Быстро, что было важно и очень четко! [вопрос № 182962, ответ № 266856]
19.12.2011, 11:26 »
Калимуллин Дамир Рустамович
Спасибо за помощь. После этих упрощений задача была решена. [вопрос № 184805, ответ № 269163]
21.02.2012, 07:02 »
Даровко Антон Владимирович
Вы решили задачу отлично! [вопрос № 185468, ответ № 270011]

РАЗДЕЛ • Pascal / Delphi / Lazarus

Создание программ на языках Pascal, Delphi и Lazarus.

[администратор рассылки: Зенченко Константин Николаевич (Модератор)]

Лучшие эксперты в этом разделе

Зенченко Константин Николаевич
Статус: Модератор
Рейтинг: 217
Асмик Гаряка
Статус: Советник
Рейтинг: 37
Орловский Дмитрий
Статус: Мастер-Эксперт
Рейтинг: 3

Перейти к консультации №:
 

Консультация онлайн # 140101
Раздел: • Pascal / Delphi / Lazarus
Автор вопроса: Хукаленко Дмитрий
Отправлена: 16.07.2008, 23:56
Поступило ответов: 1

Уважаемые эксперты, подскажите как узнать позицию текстового курсора в элементах TEdit и TStringGrid и вставить символ в это место.

Состояние: Консультация закрыта

Ответ # 226105 от Абельхарисов Руслан/Marked One

Здравствуйте, Хукаленко Дмитрий!
В свойстве Edit'а SelStart хранится позиция курсора.
Вот процедура которая вставляет строку в Edit:

{Edit-компонент TEdit, str-строка для вставки}
procedure InsertToEdit(var Edit: TEdit; const str: ShortString);
var
 {Временная строка}
 s: string;
begin
 {Копируем в s содержимое Edit'а, т.к. напримую с Edit'ом процедура Insert не может}
 s:=edit.Text;
 {Вставляем str туда где находится курсор
 insert(source: ShortString; var s: openstring; index: Integer;
 source - строка которую надо вставит в строку s, Index-позиция куда вставить}

 insert(str, s, edit.SelStart+1);
 {Обновляенм содержимое Edit'а}
 Edit.Text:=s;
end;

Удачи!!!


Консультировал: Абельхарисов Руслан/Marked One
Дата отправки: 17.07.2008, 15:11

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 140101

Посетитель

ID: 4837

# 1

= общий = | 18.07.2008, 21:07 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Чтобы выполнить поставленную задачу с StringGrid, можно создать собственный класс, наследуемый от TStringGrid с собственным обработчиком редактирования ячеек (с самим TStringGrid у меня получился один вариант, но он достаточно криво работает).


Посетитель

ID: 177738

# 2

= общий = | 20.07.2008, 21:47 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Создавать собственные классы для меня пока слишком круть, зато теперь я знаю, что в TStringGrid нет свтроенной функции для этих целей. Спасибо за внимание!

 

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.17785 сек.

© 2001-2018, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.47 от 16.04.2018