Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.07.2008, 13:04   #1
BESS
Пользователь
 
Аватар для BESS
 
Регистрация: 30.07.2008
Сообщений: 48
Восклицание Выделение текста В мемо

Мне нужно обработать выделение текста в мемо как событие как это можно сделать у кого какие соображения?
BESS вне форума Ответить с цитированием
Старый 30.07.2008, 13:30   #2
DOLBY
Форумчанин
 
Аватар для DOLBY
 
Регистрация: 12.12.2007
Сообщений: 121
По умолчанию

Что-то типа этого:
Код:
procedure TForm1.Memo1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 if(Memo1.SelLength<>0) then
  begin
   //Твоё Событие
  end;
end;
Компьютеры - вещь слишком сложная, чтобы работать в принципе. Поэтому то, что они работают хоть как-то, уже чудо.
DOLBY вне форума Ответить с цитированием
Старый 30.07.2008, 13:35   #3
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,544
По умолчанию

Можно сделать так:
Код:
var Memo1SelLength: Integer = 0;
...
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if memo1.SelLength <> Memo1SelLength then
  begin
    Memo1SelLength := Memo1.SelLength;
    OnMemoSelect; // некий обработчик
  end; {if}
end;
Т.е. нужен еще таймер. Если происходит выделение, то вызывается процедура OnMemoSelect.
Arigato вне форума Ответить с цитированием
Старый 30.07.2008, 13:39   #4
BESS
Пользователь
 
Аватар для BESS
 
Регистрация: 30.07.2008
Сообщений: 48
Подмигивание

Цитата:
Сообщение от DOLBY Посмотреть сообщение
Что-то типа этого:
Код:
procedure TForm1.Memo1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 if(Memo1.SelLength<>0) then
  begin
   //Твоё Событие
  end;
end;
это все хорошо а ести выделение клавой происходиь?
BESS вне форума Ответить с цитированием
Старый 30.07.2008, 13:40   #5
NikLik
Форумчанин
 
Аватар для NikLik
 
Регистрация: 22.11.2007
Сообщений: 224
По умолчанию

Как отловить это как событие--незнаю, но узнать об изменении можно обрабатывая нажатия клавиш мыши\клавиатуры либо по таймеру проверять выделенный текст.

P.S. на мой взгляд, это лучший вариант...иначе--рыться в WinAPI, и то не факт что что-нибудь найдёшь.
Вложения
Тип файла: rar memo_seltext;.rar (2.6 Кб, 36 просмотров)

Последний раз редактировалось NikLik; 30.07.2008 в 13:53.
NikLik вне форума Ответить с цитированием
Старый 30.07.2008, 13:43   #6
BESS
Пользователь
 
Аватар для BESS
 
Регистрация: 30.07.2008
Сообщений: 48
По умолчанию

это все конечно идея а может есть что нить готовое? сообщения какие нить перехватить )))) ?????
BESS вне форума Ответить с цитированием
Старый 30.07.2008, 13:46   #7
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,544
По умолчанию

Сообщения: клавиатура, мышь.
А проще (ИМХО) с таймеров (см. мой пример).
Arigato вне форума Ответить с цитированием
Старый 30.07.2008, 13:55   #8
BESS
Пользователь
 
Аватар для BESS
 
Регистрация: 30.07.2008
Сообщений: 48
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
Сообщения: клавиатура, мышь.
А проще (ИМХО) с таймеров (см. мой пример).
нет с таймеров не проще мне нужна в конечном итоге мгновенная индикация количества выделенных символов с минимальной нагрузкой на ресурсы компа
BESS вне форума Ответить с цитированием
Старый 30.07.2008, 13:59   #9
BESS
Пользователь
 
Аватар для BESS
 
Регистрация: 30.07.2008
Сообщений: 48
Радость может еще кто нить что нить предложит?

давайте любые идеи
BESS вне форума Ответить с цитированием
Старый 30.07.2008, 14:29   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
с минимальной нагрузкой на ресурсы компа
Определяй выделение в OnKeyDOWN OnMouseDown для Эдита.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
сохранение текста из мемо BESS Компоненты Delphi 14 05.03.2012 15:26
Выделение текста в webbrowser'е НП... Компоненты Delphi 1 12.07.2011 17:22
загрузка текста с http в мемо benjaminfran Работа с сетью в Delphi 3 05.03.2008 13:57
Как поменять строчки текста в мемо BETONOMESHALKA Общие вопросы Delphi 9 11.11.2007 22:39
Цвет текста в Мемо через Handle rpy3uH Win Api 1 30.10.2006 20:05