Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.10.2006, 00:07   #1
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Сообщений: 17,501
По умолчанию Код 13 и stringGrid

перенесено со старого форума. сообщение от l0kk1.

Мне нужно сделать переход каретки в стринггрид на строку вниз, по человечески это код 13 но в таблице это не прокатывает. курсор не переводит, а в место этого ставит |

перенесено со старого форума. сообщение от zetrix.

Т.е. тебе нужен многострочные StringGrid?
Вот посмотри примерчик:
procedure TForm1.grid1DrawCell(Sender: TObject; Col, Row: Longint;
Rect: TRect; State: TGridDrawState);

var l_oldalign : word;
l_YPos,l_XPos,i : integer;
s,s1 : string;
l_col,l_row :longint;

begin
l_col := col;
l_row := row;
with sender as tstringgrid do
begin
if (l_row=0) then
canvas.font.style:=canvas.font.styl e+[fsbold];
if l_row=0 then
begin
l_oldalign:=settextalign(canvas.han dle,ta_center);
l_XPos:=rect.left + (rect.right - rect.left) div 2;
s:=cells[l_col,l_row];
while s<>'' do
begin
if pos(#13,s)<>0 then
begin
if pos(#13,s)=1 then
s1:=''
else
begin
s1:=trim(copy(s,1,pred(pos(#13,s))) );
delete(s,1,pred(pos(#13,s)));
end;
delete(s,1,2);
end
else
begin
s1:=trim(s);
s:='';
end;
l_YPos:=rect.top+2;
canvas.textrect(rect,l_Xpos,l_YPos, s1);
inc(rect.top,rowheights[l_row] div 3);
end;
settextalign(canvas.handle,l_oldali gn);
end
else
begin
canvas.textrect(rect,rect.left+2,re ct.top+2,cells[l_col,l_row]);
end;
canvas.font.style:=canvas.font.styl e-[fsbold];
end;
end;
Alar вне форума Ответить с цитированием
Старый 08.02.2007, 22:44   #2
svanyk
Новичок
Джуниор
 
Регистрация: 08.02.2007
Сообщений: 1
По умолчанию Можно проще

procedure TForm1.StringGrid1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=VK_Return then Key :=VK_Down;{Используем виртуальные кнопки }
end;
svanyk вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
StringGrid Devikss Общие вопросы Delphi 8 25.05.2008 16:14
StringGrid MAcK Общие вопросы .NET 2 31.03.2008 11:40
StringGrid Dimon88 Компоненты Delphi 15 14.02.2008 11:44
StringGrid bart77 Помощь студентам 9 27.04.2007 09:35
StringGrid dj jo Компоненты Delphi 2 15.02.2007 07:47