Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.47 MB
Время: 0.019 c
1-67908
iXuSs
2003-07-08 14:57
2003.07.21
Открыть все модули проекта.


14-68003
IDDQD
2003-07-03 15:55
2003.07.21
DBComboBox


14-68057
Dign
2003-07-04 17:17
2003.07.21
Как открыть визуальную компоненту в консольном приложении


14-68071
Urvin
2003-07-06 12:24
2003.07.21
PLZ HLP: ActiveX


14-68014
AlexRush
2003-07-03 20:39
2003.07.21
А помнит ли кто нибудь первоначальное значение слова hacker ?