Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.31;
Скачать: CL | DM;

Вниз

Как убрать курсор в TMemo   Найти похожие ветки 

 
saNat ©   (2004-10-14 02:12) [0]

Доброго времени суток...
Свойство ReadOnly выключает только редактирование. Подскажите, пожалуйста, как убрать курсор из TMemo.

С уважением...


 
GanibalLector ©   (2004-10-14 02:24) [1]

Самый простой способ это :

procedure TForm1.Memo1Enter(Sender: TObject);
begin
Имя компонента(визуального...например Panel) .Setfocus;
end;


 
1008 ©   (2004-10-14 10:41) [2]

Вот компонент, фактически TMemo, но при включении ReadOnly убирает курсор:

unit WCMemo;

interface

uses
Windows,
Messages,
SysUtils,
Classes,
Controls,
StdCtrls;

type
 TWCMemo = class(TMemo)
 private
   { Private declarations }
   FReadOnly:boolean;
   procedure SetRead(const value:boolean);

   procedure WMPaint(var Msg: TMessage); message WM_Paint;
   procedure WMSetFocus(var Msg: TMessage); message WM_SetFocus;
   procedure WMNCHitTest(var Msg: TMessage); message WM_NCHitTest;
   procedure WMKEYDOWN(VAR Message: TMessage); message WM_KEYDOWN;
   procedure CreateParams(var Params: TCreateParams); override;
   protected
   { Protected declarations }
 public
   { Public declarations }
 published
   { Published declarations }
   property ReadOnly:boolean read FReadOnly write SetRead;
 end;

procedure Register;

implementation

procedure Register;
begin
 RegisterComponents("Samples", [TWCMemo]);
end;

{ TWCMemo }

procedure TWCMemo.CreateParams(var Params: TCreateParams);
begin
inherited;
Params.WindowClass.hCursor := LoadCursor(0, IDC_ARROW);
end;

procedure TWCMemo.WMKEYDOWN(var Message: TMessage);
var
Key:Integer;
begin
Key:= Message.WParamLo;

case Key of
 vk_Up:
 begin
  Perform(EM_SCROLL, SB_LINEUP, 0);
  Key:= 0;
 end;
 vk_Down:
 begin
  Perform(EM_SCROLL, SB_LINEDOWN, 0);
  Key:= 0;
 end;
end;
inherited;
if ReadOnly then HideCaret(Handle) else ShowCaret(Handle);
end;

procedure TWCMemo.WMNCHitTest(var Msg: TMessage);
begin
inherited;
if ReadOnly then HideCaret(Handle) else ShowCaret(Handle);
end;

procedure TWCMemo.WMPaint(var Msg: TMessage);
begin
inherited;
if ReadOnly then HideCaret(Handle) else ShowCaret(Handle);
end;

procedure TWCMemo.WMSetFocus(var Msg: TMessage);
begin
inherited;
if ReadOnly then HideCaret(Handle) else ShowCaret(Handle);
end;

procedure TWCMemo.SetRead(const value:boolean);
begin
TMemo(self).ReadOnly:=value;
FReadOnly:=value;
end;

end.



Страницы: 1 вся ветка

Текущий архив: 2004.10.31;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.113 c
1-1098173227
xman
2004-10-19 12:07
2004.10.31
Не отображать Hint`ы в TreeView над объектами


10-1054713801
OlegL
2003-06-04 12:03
2004.10.31
Методы COM object-а


14-1097693697
Comp
2004-10-13 22:54
2004.10.31
C++ to Delphi


11-1082372645
Max003
2004-04-19 15:04
2004.10.31
Не могу установить KolWEBbrowser выдаёт ошибку ActiveKOL.dcu


1-1097609853
Павел
2004-10-12 23:37
2004.10.31
прицепить PopupMenu к DBGrid