![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как убрать возможность вызова контекстного меню TMemo? [D7, WinXP]
jeka_t © (2006-05-24 13:46:00)Добрый день!
Подскажите пожалуйста:
Как убрать возможность вызова контекстного меню TMemo?
Или
Мне необходимо иметь не более 3 строки и длина не должна превышать каждой строки 31 символ (без Char(13) + Char(10)) у компонента TMemo
Пробую через OnKeyPress...
работает, но через контекстное меню можно добавлять шо угодно...
Помогите пожалуйста
begin...end (2006-05-24 16:05:00) [1]> jeka_t (24.05.06 15:59) [6]
То есть нужно запретить вставку из буфера? Я бы сделал так:
type
TForm1 = class(TForm)
Memo1: TMemo;
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
OldMemoWndProc: TWndMethod;
procedure NewMemoWndProc(var Message: TMessage);
end;
procedure TForm1.NewMemoWndProc(var Message: TMessage);
begin
if Message.Msg <> WM_PASTE then
OldMemoWndProc(Message)
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
OldMemoWndProc := Memo1.WindowProc;
Memo1.WindowProc := NewMemoWndProc;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
Memo1.WindowProc := OldMemoWndProc;
end;
P.S. Ctrl+V -- это не единственное сочетание клавиш для вставки из буфера.
jeka_t (2006-05-24 15:59:00) [2]Мне необходимо иметь не более 3 строки и длина каждой строки не должна превышать 31 символ (без Char(13) + Char(10)) у компонента TMemo...
Если в буфере есть что-нибудь, то при комбинации клавиши Ctrl+V в строку вставляется текст из буфера... А это не допустимо для меня...
begin...end (2006-05-24 15:56:00) [3]> jeka_t (24.05.06 15:54) [4]
Какое отношение комбинация клавиш Ctrl+V имеет к запрету контекстного меню? Что вообще нужно?
jeka_t (2006-05-24 15:54:00) [4]Спасибо, это ещё лучше, но как быть с комбинацией клавиш Ctrl+V?
begin...end (2006-05-24 15:29:00) [5]> jeka_t (24.05.06 13:46)
> Как убрать возможность вызова контекстного меню TMemo?
В обработчике OnContextPopup установить Handled в True.
jeka_t (2006-05-24 15:24:00) [6]Спасибо
Desdechado (2006-05-24 13:54:00) [7]как вариант:
перекрой popup-меню своим Tmemo.PopupMenu
в котором не будет возможности вставки