Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как настроить RichEdit, чтобы он выглядел как Label ? Чтобы нельз [D5, WinME]


Кен ©   (2002-11-08 04:14:00) 

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


SB   (2002-11-09 15:50:00) [1]

А я решал аналогичную задачу так: Enabled оставил в true, а сделал следующее:

TExtRichEdit = class(TRxRichEdit)
private
FDisabled: boolean;
public
property Disabled: boolean read FDisabled write FDisabled;
procedure WMLButtonDown(var Message: TWMLButtonDown); message WM_LBUTTONDOWN;
procedure WMLButtonUp(var Message: TWMLButtonUp); message WM_LBUTTONUP;
procedure WMLBUTTONDBLCLK(var Message: TMessage); message WM_LBUTTONDBLCLK;
procedure WMRButtonDown(var Message: TWMRButtonDown); message WM_RBUTTONDOWN;
procedure WMRButtonUp(var Message: TWMRButtonUp); message WM_RBUTTONUP;
procedure WMRBUTTONDBLCLK(var Message: TMessage); message WM_RBUTTONDBLCLK;
procedure WMSetCursor(var Message: TMessage); message WM_SetCursor;
procedure WMSetFocus(var Message: TMessage); message WM_SetFocus;
end;

{----}
procedure TExtRichEdit.WMLButtonDown(var Message: TWMLButtonDown);
begin
if not Disabled then inherited;
end;

procedure TExtRichEdit.WMLButtonUp(var Message: TWMLButtonUp);
begin
if not Disabled then inherited;
end;

procedure TExtRichEdit.WMLBUTTONDBLCLK(var Message: TMessage);
begin
if not Disabled then inherited;
end;

procedure TExtRichEdit.WMRButtonDown(var Message: TWMRButtonDown);
begin
if not Disabled then inherited;
end;

procedure TExtRichEdit.WMRButtonUp(var Message: TWMRButtonUp);
begin
if not Disabled then inherited;
end;

procedure TExtRichEdit.WMRBUTTONDBLCLK(var Message: TMessage);
begin
if not Disabled then inherited;
end;

procedure TExtRichEdit.WMSetCursor(var Message: TMessage);
begin
if not Disabled then inherited
else Message.Result := 1;
end;

procedure TExtRichEdit.WMSetFocus(var Message: TMessage);
begin
if not Disabled then inherited
else begin Windows.SetFocus(0); Message.Result :=0; end; {removes caret and disables selection}
end;


Николай Быков   (2002-11-09 02:58:00) [2]

Все я pass


Almaz   (2002-11-09 02:57:00) [3]


> Кен (09.11.02 01:53)
> 2 Almaz ©
> От RichEdit1.Enabled := FALSE; цвет фона становится серым.
> И никак не изменяется больше. А цвет текста становится менее
> ярким. Как быть ?

И опять ответ не прост, а очень прост:


SetWindowLong(RichEdit1.Handle, GWL_STYLE, GetWindowLong(RichEdit1.Handle, GWL_STYLE) or WS_DISABLED);


Удачи.


Николай Быков   (2002-11-09 02:20:00) [4]


> Кен (09.11.02 02:16)

Я тебе с самого начала сказал, что никак сделать нельзя. Чего тебе еще надо? Ну напиши свой компонент, чтобы он мог превращать себя в Label, если так уж хочешь.


Кен   (2002-11-09 02:16:00) [5]

Николай Быков
Если сказать по делу нечего, то нечего и писать ко мне.


Николай Быков   (2002-11-09 01:57:00) [6]

Вопрос:

> Кен (09.11.02 01:53)

Ответ:
НИКАК!


Кен   (2002-11-09 01:53:00) [7]

2 Almaz ©
От RichEdit1.Enabled := FALSE; цвет фона становится серым. И никак не изменяется больше. А цвет текста становится менее ярким. Как быть ?


Николай Быков   (2002-11-08 05:14:00) [8]


> Almaz © (08.11.02 05:11)

Спасибо! А я когда хотел сделать такой Memo, то думал, что никак так не сделаешь


Almaz   (2002-11-08 05:11:00) [9]


> Кен (08.11.02 04:14)
> я было ничего выделить, скопировать, чтобы курсор не мерцал
> в виде палочки, чтобы текст не прокручивался. В общем как
> максимально приблизить к лэйблу ?


RichEdit1.Enabled := FALSE;
RichEdit1.BorderStyle := bsNone;


Удачи.


Николай Быков   (2002-11-08 04:41:00) [10]

Вопрос:

> Как

Ответ:
НИКАК


Наверх

Титульная страница Поиск, карта сайта Написать письмо