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

Вниз

DBGrid.../MouseMove   Найти похожие ветки 

 
Nick   (2003-07-18 11:46) [0]

Добрый день местера!
Имеем следующий текст:
procedure TFGlav.DBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var
ScrPt, GrdPt: TPoint;
Cell: TGridCoord;
begin
if not (Sender is TDBGrid) then exit;
ScrPt := Mouse.CursorPos;
GrdPt := (Sender as TDBGrid).ScreenToClient(ScrPt);
Cell := (Sender as TDBGrid).MouseCoord(GrdPt.X, GrdPt.Y);
if Cell.Y = 0 then
begin
(Sender as TDBGrid).Hint:=(Sender as TDBGrid).Columns[Cell.X - 1].Title.Caption;
If (Sender as TDBGrid).Hint="Название организации" then begin
(Sender as TDBGrid).Hint := "Сортировка";
(Sender as TDBGrid).ShowHint := true;
end
else If (Sender as TDBGrid).Hint="Котактное лицо" then begin
(Sender as TDBGrid).Hint := "Сортировка" ;
(Sender as TDBGrid).ShowHint := true;
end
else If ((Sender as TDBGrid).Hint="Город") or ((Sender as TDBGrid).Hint="Адрес") or ((Sender as TDBGrid).Hint="Телефон")
then begin
(Sender as TDBGrid).Hint :="";
(Sender as TDBGrid).ShowHint := False;
end
end else begin
(Sender as TDBGrid).Hint :="";
(Sender as TDBGrid).ShowHint := False;
end;
end;
Так вот при наведении курсора мыши на левый верхний угол DBGrid-а, получаем сообщение: " List index out of bounds (-1)".
Как проверить координаты верхнего левого угла?
Спасибо!


 
ЮЮ   (2003-07-18 12:05) [1]

Columns[ Cell.X - 1].Title.Caption;

Самый левый, это где состояние записи рисуется


 
Nick   (2003-07-18 12:24) [2]

Самый левый, это левее заголовка первого столбца!


 
ЮЮ   (2003-07-18 12:27) [3]

Вот именно. И что ты там хочешь писать, если для него нет Columns? В этом месте ты получаешь Columns[- 1].Title.Caption;


 
Nick   (2003-07-18 12:48) [4]

Я там ни чего писать ни хочу! Я хочу, чтоб при наведении мыши в ту область не вылазило сообщение: "List index out of bounds (-1)"! Как это сделать?
ВЫ, понимаете про, что я толкую?


 
ЮЮ   (2003-07-18 12:51) [5]

Мы то понимаем, а никак не хочешь :-)
if (Cell.Y = 0) and (Cell.X > 0) then


 
Nick   (2003-07-18 12:55) [6]

По мойму мы друг друга поняли!
Спасибо за помощь!


 
ЮЮ   (2003-07-18 12:57) [7]

Не прошло и часа :-)



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.08.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.01 c
1-33091
Evg12
2003-07-26 19:44
2003.08.11
Таймер в микровекундах.


1-33203
Arezzz
2003-07-26 19:23
2003.08.11
Позиционирование надписи на отрезке


4-33403
Stas
2003-06-11 11:40
2003.08.11
MUTEX


14-33310
keymaster
2003-07-24 13:53
2003.08.11
Проблема с win XP


9-33041
vivk
2003-02-05 09:27
2003.08.11
TerrainRenderer в GLScene





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский