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

Вниз

StringGrid   Найти похожие ветки 

 
VEZ   (2006-01-24 14:04) [0]

Нужно вставить в ячейку грида спинэдит, самый простой способ конечно подставить спинэдит под координаты ячейки, как правильно вычислить эти координаты.


 
Yanis ©   (2006-01-24 14:41) [1]

function CellRect(ACol, ARow: Longint): TRect;
При помощи этой функции можно узнать положение клетки относительно "сетки". А дальше делай с этими координатами что пожелаешь.


 
EvS   (2006-01-24 14:42) [2]

Delphi Help

CellRect method (TDrawGrid)
Returns the screen coordinates of a cell in the grid.

Delphi syntax:

function CellRect(ACol, ARow: Longint): TRect;

TRect defines a rectangle

TRect = packed record
 case Integer of
   0: (Left, Top, Right, Bottom: Integer);
   1: (TopLeft, BottomRight: TPoint);
end;


 
VEZ   (2006-01-24 14:46) [3]

Дак это понятно, но там координаты-то относительно чего выдаются, надо пересчитать координаты сспинэдита относительно них.


 
Yanis ©   (2006-01-24 14:55) [4]

hopeless case


 
Yanis ©   (2006-01-24 15:16) [5]


procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
 ARow: Integer; var CanSelect: Boolean);
var
 p: TPoint;
begin
 with StringGrid1 do
   begin
     P := Point(CellRect(ACol, ARow).Left, CellRect(ACol, ARow).Top);
     Caption := Format("Left %d, Top %d", [P.X, P.Y]);

     SpinEdit1.Width := StringGrid1.ColWidths[ACol] + GridLineWidth;
     SpinEdit1.Height := StringGrid1.RowHeights[ARow] + GridLineWidth;

     SpinEdit1.Left := P.X + GridLineWidth + 1 + Left;
     SpinEdit1.Top := P.Y + GridLineWidth + 1 + Top;
   end;
end;

Помоему внедрение компонентов делается немного не так...


 
Amoeba ©   (2006-01-24 15:49) [6]

Используй XStringGrid. Бсплатный, с исходниками. Там это уже встроено.
http://www.eye.ch/~mduerig/prog/


 
VEZ   (2006-01-24 17:04) [7]

XStringGrid и использую, только он немного глючный и неудобный, и спинэдит там только целые значения понимает.


 
Amoeba ©   (2006-01-25 11:34) [8]


> VEZ   (24.01.06 17:04) [7]
> XStringGrid и использую, только он немного глючный и неудобный,
>  и спинэдит там только целые значения понимает.

Посмотри, как это сделано в исходниках того-же XStrinGrid или DBGridEh (из EhLib) и сделай сам по аналогии.



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

Форум: "Основная";
Текущий архив: 2006.02.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.046 c
15-1138948752
SPeller
2006-02-03 09:39
2006.02.26
У кого есть картинка объяснительной записки?


2-1139675549
veb
2006-02-11 19:32
2006.02.26
NOT LIKE


1-1137080441
sally
2006-01-12 18:40
2006.02.26
Многопоточность в DLL, отрисовка в приложении


2-1139561331
worldmen
2006-02-10 11:48
2006.02.26
Изменение формата даты.


2-1139558231
Id
2006-02-10 10:57
2006.02.26
Вертикальная надпись в QReport





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