Текущий архив: 2003.07.21;
Скачать: CL | DM;
Вниз
StringGrid and Button Найти похожие ветки
← →
adogg (2003-07-08 12:42) [0]Всем доброго дня! у меня такой вопрос: Как в ячейку СтрингГрида поместить кнопку, что бы по ее нажатию вызывался своеобразный редактор содержимого ячейки.
← →
Leshiy (2003-07-08 13:14) [1]OnClick ?
← →
BOA_KAA (2003-07-08 13:16) [2]OnDrawCell
← →
SVM (Perm) (2003-07-08 13:20) [3]TValueListEditor (или исходники)
← →
ЮЮ (2003-07-08 13:27) [4]TEditStyle = (esSimple, esEllipsis, esPickList);
Написать наследника, перекрыв GetEditStyle
function GetEditStyle(ACol, ARow: Longint): TEditStyle; dynamic;
function TCustomGrid.GetEditStyle(ACol, ARow: Longint): TEditStyle;
begin
Result := esSimple;
end;
Как это сделано, например, в RxDrawGrid, где можно в обработчике указывать любой стиль для любой ячейки:
function GetEditStyle(ACol, ARow: Longint): TInplaceEditStyle; override;
function TRxDrawGrid.GetEditStyle(ACol, ARow: Longint): TInplaceEditStyle;
begin
Result := esSimple;
if Assigned(FOnGetEditStyle) then FOnGetEditStyle(Self, ACol, ARow, Result);
end;
← →
Sergey26 (2003-07-08 15:27) [5]Если содержимое ячейки должно быть видно то можно выкрутиться так:
Кидаешь на форму кнопку в свойствах делаешь ее невидимой, при нажатии на определенную ячейку обрабатываешь событие onmousedown в нем узнаешь координаты ячейки
(Grid1.MouseToCell() ), узнаешь координаты углов (Grid1.CellRect ), присваиваешь координаты и ширину и высоту кнопки выташив их из Rect. , делаешь ее видимой , ставишь ей фокус, обрабатываешь событие, когда ее нужно спрятать и вывести свой редактор... примерно так я делал с combobox ...
Страницы: 1 вся ветка
Текущий архив: 2003.07.21;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.006 c