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

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

Как в StringGrid в ячейку вводить только один символ?


abba ©   (2007-02-14 21:01:00) 

Как в StringGrid в ячейку вводить только один символ?
Может есть функция, которая за это отвечает? Или придётся писать вручную?


abba   (2007-02-14 22:02:00) [1]

Мне нужно, чтобы я мог вводить в ячейку только один символ и не более. Мне придётся вручную или можно как-то проще?


abba   (2007-02-14 22:02:00) [2]

Спасибо большое.


RASkov   (2007-02-14 22:00:00) [3]

> [0] abba   (14.02.07 21:01)

Вот и вводить типа так можно ограничить:
procedure TForm1.StringGrid1SetEditText(Sender: TObject; ACol, ARow: Integer; const Value: String);
begin
 if Length(Value)>0 then StringGrid1.Cells[ACol, ARow]:=Value[1];
end;


RASkov   (2007-02-14 21:56:00) [4]

> [0] abba   (14.02.07 21:01)

Именно вводить нужно 1 символ или может хватит только отображать 1 символ?

procedure TForm1.FormCreate(Sender: TObject);
var R, C: Integer;
begin
 for R:= 0 to 4 do
  for C:= 0 to 4 do StringGrid1.Cells[R,C]:='123456';
end;

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState);
begin
 StringGrid1.Canvas.TextRect(Rect, Rect.Left+2, Rect.Top+4, StringGrid1.Cells[ACOl, AROw][1]);
end;


abba   (2007-02-14 21:27:00) [5]

А почему?


Virgo_Style   (2007-02-14 21:23:00) [6]

abba   (14.02.07 21:01)
Вручную. А лучще бросай это дело уже сейчас, дальше будет еще тяжелее.


Наверх

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