![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Значение DBGridEh [D7, IB6.x]
Aladin © (2004-06-22 10:54:00)Можно ли вывести в Caption формы значение ячейки DBGridEh если навести мышкой на нее и ничего не нажимать и как?
KSergey (2004-06-26 12:32:00) [1]При работе в DBGrid (в том числе и DBGridEh) вспоминаем, что данные в шриде вовсе не хранятся, они беруться из соотв. DataSet. Вот и весь фокус.
Используем св-сво Columns грида, из него выбираем например так:
Columns[CurMouseColNum].Field.AsString
Делаи уточняем, под рукой нет. Как определить CurMouseColNum - см. Mim1 © [8]
Mim1 (2004-06-25 22:26:00) [2][12] Эдик (25.06.04 11:41)
Да я вродь и не сильно то спешу. Просто НОРМ,АЛЬНЫЙ програмист и напишет чего ему не хватает, например как вы, а может и сам без заморочек вычислит (надеюсь не надо вам объяснять как вычисить значение без cells), а не станет говорить чтото вроде [9]. Свинство ИМХО. Если человек потратил время на написание ответа то потрать время на уточнение. А не поли вразу из трех слов. :(
Эдик (2004-06-25 11:41:00) [3]> [11] Mim
Не спешим с выводами.
Все хорошо, да только ты не учел, что у DBGrid, DBGridEh нет свойства cells, в чем вся проблемма и состоит...
Mim1 (2004-06-24 22:17:00) [4]
> [9] Aladin © (24.06.04 17:12)
Извиняюсь конечно
-
Ты и верно о дурак,
И Андрей в слезах пошел с пискарями домой (с) Наутилус
-
А теперь подмамай, если надо прочитай еще праз всю ветку, или только мои посты. Если непонятно, и не стыдно пиши - разжую дальше. Хотя ИМХО если такое не понятно то с програмированием надо завязывать, а переходить к чтению учебной литературы
Эдик (2004-06-24 19:04:00) [5]Я делал следующим образом:
В событии OnDrawDataCell формировал массив по колличеству видимых полей, тут же заполнял его текущими значениями из Field, потом эту инфу использовал, когда наводили мышку, так же как и в StringGrid, только значения брал из массива.
Aladin (2004-06-24 17:12:00) [6]Как это с DBGridEh связано?
Mim1 (2004-06-23 21:24:00) [7]
procedure TCustomDrawGrid.MouseToCell(X, Y: Integer; var ACol, ARow: Longint);
var
Coord: TGridCoord;
begin
Coord := MouseCoord(X, Y);
ACol := Coord.X;
ARow := Coord.Y;
end;
-
procedure TForm1.StringGrid1MouseMove(Sender: TObject; Shift: TShiftState;
X, Y: Integer);
var
Coord: TGridCoord;
begin
StringGrid1.MouseToCell(X, Y, Column, Row);
Coord := MouseCoord(X, Y);
if (Coord.X = -1) or (Coord.Y=-1) then exit;
caption := StringGrid1.Cells[Coord.X,Coord.Y];
{ StringGrid1.Hint := StringGrid1.Cells[column,row];
if (ssRight in Shift) and (Column=2) then
Application.ActivateHint(Mouse.CursorPos);}
end;
Aladin (2004-06-23 17:02:00) [8]Это я нашел. Мне надо DBGridEh а не StringGrid
Mim1 (2004-06-22 18:59:00) [9]
procedure TForm1.StringGrid1MouseMove(Sender: TObject; Shift: TShiftState;
X, Y: Integer);
var
Column, Row: Longint;
begin
StringGrid1.MouseToCell(X, Y, Column, Row);
if (Column = -1) or (Row=-1) then exit;
caption := StringGrid1.Cells[column,row];
{ StringGrid1.Hint := StringGrid1.Cells[column,row];
if (ssRight in Shift) and (Column=2) then
Application.ActivateHint(Mouse.CursorPos);}
end;
Aladin (2004-06-22 12:07:00) [10]>Johnmen © (22.06.04 11:26) [3]
>Если готов разбираться, то см. исходники DBGridEh.
>Там и найдешь, как они это делают в хинт.
Пробовал. Долго.
>Mim1 © (22.06.04 11:30) [4]
>Вродебы есть метод mousetocell, прикручиваеш его к onmousemove. Данные береш через свойство cells.
А примерчик можно? Что-то не нашел mousetocell...
Mim1 (2004-06-22 11:30:00) [11]Вродебы есть метод mousetocell, прикручиваеш его к onmousemove. Данные береш через свойство cells.
Johnmen (2004-06-22 11:26:00) [12]Если готов разбираться, то см. исходники DBGridEh.
Там и найдешь, как они это делают в хинт.
Aladin (2004-06-22 11:15:00) [13]Для начала в кепшн
Дальше я разберусь :)
Johnmen (2004-06-22 10:56:00) [14]А смысл ? Именно в кепшн ?