![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TDBGrid.OnMouseDown
Savek © (2007-08-10 09:18:00)Странное поведение событий в Гриде: OnMouseUp срабатывает в любом месте грида, а OnMouseDown срабатывает только при нажатии на заголовке грида или на месте, незанятом строками...
Наводим курсор мыши на строку нажимаем/опускаем кнопку - OnMouseDown НЕ произошло, OnMouseUp - произошло...
Это что, стандартное поведение компонента? И как с этим бороться?
Savek (2007-08-10 14:55:00) [1]Спасибо, в этом напрвлении я и копал, но допер бы нескоро
Lacmus (2007-08-10 11:26:00) [2]>Это что, стандартное поведение компонента?
Да
>И как с этим бороться?
type
TDBGridX = class(TDBGrid)
protected
procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
end;
TDBGrid = class(TDBGridX);
TForm5 = class(TForm)
DBGrid1: TDBGrid;
Table1: TTable;
DataSource1: TDataSource;
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form5: TForm5;
implementation
{$R *.dfm}
procedure TDBGridX.MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
{ ... }
inherited MouseDown(Button, Shift, X, Y);
{ ... }
end;
MsGuns (2007-08-10 10:58:00) [3]Ничего странного нет. В гриде есть возможность выделения нескольких строк сразу с помощью как раз мыши