Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.04;
Скачать: CL | DM;

Вниз

Как определить координаты ячейки в строке?   Найти похожие ветки 

 
Beavercrazy   (2007-01-18 12:41) [0]

Есть Dbgrid, в нем строки и соответственно ячейки. Необходимо определить координаты определенных ячеек, чтобы затем под ними показать компонент panel. У меня 10 колонок и соответственно необходимо показывать tpanel либо перед 3,6 или под обеими сразу. Вопрос собственно как определить координаты ячеек выделенной строки. ОЧень нужен код.

Заранее спасибо.


 
ЮЮ ©   (2007-01-18 12:45) [1]


> необходимо показывать tpanel либо перед 3,6 или под обеими
> сразу

Ничего не понимаю. А строк сколько. А то что они скроллироваться могут не беспокоит? Грид, в конце концов не для того придуман, чтобы к нему ещё и TPanel-и прикручивать :)


 
Elen ©   (2007-01-18 12:46) [2]


> под ними показать компонент panel.

Под ним будет не видно. А над ним (или в занимаемой ячейкой областью экрана) можно попробовать рисовать в DrawDataCell. Там координаты передаются, имхо.


 
Beavercrazy   (2007-01-18 13:46) [3]

Просто задача показать текст ячеек в которые этот самый текст не входит. К примеру примечание. В это поле входит 255 символов, а видно не вооруженым глазом 30 :). Дальше расширять столбик смысла нет. Было бы очень удобно подсвечивать этакой hint в тех записях, где весь текст не виден. ИМХО удобно panel прикрутить. Может есть и другой путь.


 
Johnmen   (2007-01-18 13:52) [4]

Во-первых, в Dbgrid никакого текста, никаких данных нет.
Во-вторых, если нужен такой хинт, то он уже давным-давно сделан. В EhLib"овском ДБГриде. Можешь глянуть на его, так нужный тебе, код...


 
Beavercrazy   (2007-01-18 14:08) [5]


> В EhLib"овском ДБГриде. Можешь глянуть на его, так нужный
> тебе, код...

Могу легко перейти на Ehlib. Не подскажите как там сделать такой Hint? Через Object Inspector?


 
Johnmen   (2007-01-18 14:12) [6]

У грида ShowHint = True, у колонки - ToolTips = True


 
Sergey13 ©   (2007-01-18 14:18) [7]

Если в этом поле лежит нечто важное, то почему бы вместо колонки в гриде не вывести его в Мемо рядом с гридом? Мое ИМХО - некузяво нечто важное хинтом показывать. Если нечто справочное/второстепенное, тогда да.


 
Beavercrazy   (2007-01-18 14:32) [8]


> У грида ShowHint = True, у колонки - ToolTips = True

А можно сделать, чтобы hint появлялся сразу после выделения строки. Т.е сейчас Hint появляется если навести курсор, а чтобы после выделения строки видна была подсказка? Можно так сделать?


 
Johnmen   (2007-01-18 15:51) [9]

Hint он мышиный хинт. А если мышиный курсор вне грида, а ты "выделяешь" строку? Вот то-то и оно...
Тебе подойдёт Sergey13 ©   (18.01.07 14:18) [7]


 
rar ©   (2007-01-18 18:07) [10]

Можно сделать в обычном гриде

На событие MyDBGridCellClick написать

MyDBGrid.Hint:=VarToStr(Column.Field.CurValue)

я отображаю обычно в статус баре, там больше места


 
MsGuns ©   (2007-01-18 22:05) [11]

type
 TDBGridCrack = class (TCustomGrid);
 ...

function GetActiveGridCellRect(Grid: TDBGrid): TRect;
//*** Возвращает TRect активной ячейки грида
begin
 result.Top := 0; result.Left := 0; result.Bottom := 0; result.Right := 0;
 if dgRowSelect in Grid.Options then exit;
 if Grid.DataSource.DataSet.RecordCount=0 then exit;
 result := TDBGridCrack(Grid).CellRect(TDBGridCrack(Grid).Col,TDBGridCrack(Grid).Row);
end;



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

Текущий архив: 2007.02.04;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.053 c
15-1168552934
vlad-mal
2007-01-12 01:02
2007.02.04
Купил журнал "Вокруг Света"


5-1148224234
jb
2006-05-21 19:10
2007.02.04
MouseWeel


15-1168889829
The X
2007-01-15 22:37
2007.02.04
Корректное отображение кириллицы в названиях разделов в CHMхелпах


2-1169022767
sergeyst
2007-01-17 11:32
2007.02.04
StringGrid


15-1168430363
<rm>
2007-01-10 14:59
2007.02.04
Уместно ли использовать компонент Indy?