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

Вниз

StringGrid, InplaceEdit, MaxLength   Найти похожие ветки 

 
kmc   (2002-04-16 14:11) [0]

Всем привет.
Как установить максимальную длину вводимой строки в
TStringGrid?
GetEditMask не катит.


 
Song ©   (2002-04-16 14:21) [1]

Вот, прикольный вариант: :))

procedure TForm1.StringGrid1SetEditText(Sender: TObject; ACol, ARow: Integer; const Value: String);
Const MaxLength=5;
begin
IF Length(Value)>MaxLength then
Begin
keybd_event(VK_BACK,0,0,0);
Application.ProcessMessages;
keybd_event(VK_BACK,0,KEYEVENTF_KEYUP,0);
End;
end;


 
MBo ©   (2002-04-16 14:33) [2]


procedure TForm1.StringGrid1SetEditText(Sender: TObject; ACol,
ARow: Integer; const Value: String);
begin
StringGrid1.Tag:=Acol+100*Arow;
end;

procedure TForm1.StringGrid1KeyPress(Sender: TObject; var Key: Char);
begin
if key<>#8 then
with stringgrid1 do
if length(cells[tag mod 100,tag div 100])>=MaxLen
then key:=#0;
end;


 
kmc   (2002-04-16 14:54) [3]

Всем большое спасибо, но я устал ждать и сделал сам,
причем довольно-таки красиво:

unit MlGrid;

interface
uses Classes, Grids;

type
TGetEditLimitEvent = procedure (Sender: TObject; ACol, ARow: Longint;
var Value: Integer) of object;
TMlStringGrid = Class(TStringGrid)
private
FOnGetEditLimit : TGetEditLimitEvent;
published
property OnGetEditLimit : TGetEditLimitEvent read FOnGetEditLimit write
FOnGetEditLimit;
protected
function GetEditLimit : Integer; override;
end;

procedure Register;

implementation

function TMlStringGrid.GetEditLimit;
begin
OnGetEditLimit(Self, Col, Row, Result);
end;

procedure Register;

begin
RegisterComponents("Mye", [TMlStringGrid]);
end;


end.



 
Song ©   (2002-04-16 15:01) [4]

Устали ждать???? Я выдал Вам 100% рабочий вариант (по-моему лучше Вашего на мой взгляд) уже через 10 мин, 2 минуты скиньте на написание и проверку, а ещё я не сразу увидел Ваш вопрос :))


 
MBo ©   (2002-04-16 15:21) [5]

>Song
не буянь ;)



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

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

Наверх




Память: 0.47 MB
Время: 0.011 c
3-94280
kserg@ukr.net
2002-04-08 14:25
2002.04.29
-какой тип данных лучше подходит для хранения TEXT-данных


1-94404
Roman9
2002-04-07 10:57
2002.04.29
Как запустить из одного exe-файла другой?


3-94329
Makuha
2002-04-09 16:28
2002.04.29
Не могу правильно задать вопрос (смотри текст письма)


3-94328
Ujin_m
2002-04-09 11:51
2002.04.29
Как определить что DB session alive


1-94408
Коля
2002-04-18 05:49
2002.04.29
FontName To String?