Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.04.29;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх









Память: 0.82 MB
Время: 0.943 c
1-94520
kopachev
2002-04-15 19:48
2002.04.29
Создание превью как в отчетах


1-94488
MVova
2002-04-15 13:57
2002.04.29
Точка входа в функцию


3-94257
valievrf
2002-04-07 17:02
2002.04.29
Обсуждение рендома и фора.....


1-94474
radisheva
2002-04-16 13:33
2002.04.29
Кодировки


1-94369
kull
2002-04-17 12:21
2002.04.29
Имя метода или функции





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский