![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как заставить в DBGrid показывать содежимое ячейки в Hint [D6, MSSQL, dBase, FoxPro, MS Access]
VtS © (2003-09-22 09:56:00)
Есть таблица с длинными строками по 30-60 символов. На форме нет места под такой широкий DBGrid. Хочу чтобы юзер проводя мышкой над ячейками в Hint"е видел всю строку данной ячейки.
Как это реализовать?
analyser (2003-09-22 10:49:00) [1]
Хорошо описано у Архангельского с примером для TEdit.
Обработка ApplicationEvents.ShowHint:
procedure TfmMain.ApplicationEvents1ShowHint(var HintStr: String;
var CanShow: Boolean; var HintInfo: THintInfo);
begin
if (HintInfo.HintControl.ClassName = "TEdit") then begin
with (HintInfo.HintControl as TEdit) do begin
Label1.Font.Name := Font.Name;
Label1.Font.Size := Font.Size;
if (Label1.Canvas.TextWidth(Text) > ClientWidth) then begin
HintStr := Text;
ApplicationEvents1.CancelDispatch;
end;
end;
end;
end;
PS: Label1 используется для того, чтобы воспользоваться ее св-вом Canvas.TextWidth
stud (2003-09-22 09:58:00) [2]
эта тема уже много раз обсуждалась
возьми grideh или quantumgrid или ищи на форуме код обработчика
stud (2003-09-22 09:58:00) [3]
эта тема уже много раз обсуждалась
возьми grideh или quantumgrid или ищи на форуме код обработчика