Форум: "Media";
Текущий архив: 2012.01.15;
Скачать: [xml.tar.bz2];
ВнизПомогите найти ошибку в коде Найти похожие ветки
← →
Elz (2008-09-20 16:03) [0]Помогите найти ошибку:
procedure TForm1.DBMemo1KeyPress(Sender: TObject; var Key: Char);
var
cRect: TRect;
bm: TBitmap;
begin
if dbmemo1.CaretPos.Y=15 then - если курсор будет на 15 строчке
begin
Windows.GetClientRect(Memo1.Handle, cRect);
bm := TBitmap.Create;
bm.Width := cRect.Right;
bm.Height := cRect.Bottom;
bm.Canvas.Font := Memo1.Font;
if bm.Canvas.TextWidth(memo1.Text + Key) > CRect.Right-1 then
Key := #0;
end;
bm.free;
end;
end;
я хочу сделать ограничение ввода текста на 15 строчке, но одна буква всеравно залазить на слелующую; а если убрать if dbmemo1.CaretPos.Y=15 then тогда все нормально.
← →
{RASkov} © (2008-09-20 17:04) [1]> [0] Elz (20.09.08 16:03)
Во первых: форматирование.... нифика ничего не понятно, так как не видно кода... И один end лишний вроде...
Во вторых: все равно ничего не понятно :) Какое ограничение хочешь сделать и при чем тут Битмап?
← →
Vlad Oshin © (2008-09-22 09:23) [2]
procedure TForm1.DBMemo1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if dbmemo1.Lines.Count>14 then
begin
Key:=0;
exit;
end;
end;
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2012.01.15;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.004 c