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

Вниз

Хочу впендюрить кнопочку в StringGrid   Найти похожие ветки 

 
pasha_golub ©   (2007-05-08 15:44) [0]

procedure TForm1.bClick(Sender: TObject);
begin
 If (sg.Row > -1) and (sg.Col > -1) then
   sg.Cells[sg.Col,sg.Row] := InputBox("Quick","Enter value",sg.Cells[sg.Col,sg.Row])
end;

procedure TForm1.sgEnter(Sender: TObject);
begin
{$D+} {$L+}
b := TButton.Create(Sender as TComponent);
b.Parent := Sender as TWinControl;
b.Height := sg.DefaultRowHeight;
b.Width := sg.DefaultColWidth div 5;
b.Visible := True;
b.Enabled := True;
b.OnClick := Self.bClick;
end;


Задача: при выделении ячейки кнопка становится слева в ней же. По нажатию спросить значение, и ввести в ячейку. Проще простого. Кнопка создается, когда грид получает фокус. Но не отрабатывает обработчик. Ткните носом, будьте добры.


 
DrPass ©   (2007-05-08 16:09) [1]

А почему OnEnter, а не OnSelectCell? И где позиция кнопки указана? И почему Owner кнопки у тебя Sender, а не форма?


 
MBo ©   (2007-05-08 16:16) [2]

StringGrid Parent-ом быть не должен, т.к. он не передает команды своим деткам, кроме InplaceEdit
И кнопку не нужно каждый раз создавать, а одну храни, и ставь на нужное место.


 
pasha_golub ©   (2007-05-08 16:17) [3]


> StringGrid Parent-ом быть не должен, т.к. он не передает
> команды своим деткам, кроме InplaceEdit


Спасибо, не знал.


> DrPass ©   (08.05.07 16:09) [1]
>
> А почему OnEnter, а не OnSelectCell? И где позиция кнопки
> указана? И почему Owner кнопки у тебя Sender, а не форма?
>

Я не весь код привел.



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

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

Наверх




Память: 0.47 MB
Время: 0.08 c
1-1175324163
Hro
2007-03-31 10:56
2007.05.27
Unicode


4-1166789398
AMS
2006-12-22 15:09
2007.05.27
функия GetModuleUsage


15-1177986140
Cj
2007-05-01 06:22
2007.05.27
Статья на сайт№2


2-1178697722
Ezorcist
2007-05-09 12:02
2007.05.27
TIcon в TBitmap?


6-1163929428
-~-
2006-11-19 12:43
2007.05.27
Пара вопросов про ICS (TWSocket).