Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как для правой клавиши мыши назначить событье / 14 сообщений из 14, страница 1 из 1
15.04.2003, 14:22
    #32141073
SergeyS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
Как для правой клавиши мыши в dbgride назначить событье (допустим что бы процедура запускальсь при кликанье правой кнопкой в ячейке).
...
Рейтинг: 0 / 0
15.04.2003, 14:27
    #32141082
ZrenBy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
procedure TfMain.DBGrid1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if(Shift=[ssRight])then begin
    Application.MessageBox('!!!','', 0 );
  end;
end;
...
Рейтинг: 0 / 0
15.04.2003, 14:30
    #32141090
eNose
Участник
[не активирован]
[не одобрен]
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
OnPopup
...
Рейтинг: 0 / 0
15.04.2003, 14:30
    #32141091
Ильшат
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
2 ZrenBy
Силен, брат!
...
Рейтинг: 0 / 0
15.04.2003, 14:35
    #32141100
pkarklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
2 SergeyS
допустим что бы процедура запускальсь при кликанье правой кнопкой в ячейке).

Не нарушай общепринятые правила построения пользовательского интерфейса. По правой кнопке должно вызываться контекстное меню. И этого будет ждать пользователь, нажимая правую кнопку. А потом выбрав пункт меню можешь запускать расчет. Причем команда должна быть не тока в контекстном меню, но и в главном меню формы, а то еще и на панели инструментов в виде кнопки.
...
Рейтинг: 0 / 0
15.04.2003, 15:09
    #32141156
SergeyS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
>Не нарушай общепринятые правила<

У меня в принципе так и происходит, вызывается контекстное меню, но перед его вызом мне нужно в DBGride.Options поменять настройки.
...
Рейтинг: 0 / 0
15.04.2003, 15:12
    #32141161
pkarklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
>но перед его вызом мне нужно в DBGride.Options поменять настройки.

Ну так вот этим ты и нарушаешь.
...
Рейтинг: 0 / 0
16.04.2003, 03:43
    #32141639
StarWind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
Непосредственно перед показом списка меню вызывается событие OnPopup от компонента TPopupMenu
...
Рейтинг: 0 / 0
16.04.2003, 08:28
    #32141687
SergeyS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
А почему вот это действует только при нажатии кнопки на название столбца сетки, а при нажатие на запись внутри столба уже не действует? (См сообщение от ZrenBy)

procedure TfMain.DBGrid1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if(Shift=[ssRight])then begin
Application.MessageBox('!!!','',0);
end;
end;
...
Рейтинг: 0 / 0
16.04.2003, 10:49
    #32141817
SergeyS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
нарооод, подскажите.....
...
Рейтинг: 0 / 0
16.04.2003, 10:55
    #32141829
Ильшат
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
Патамушта низзя...
...
Рейтинг: 0 / 0
16.04.2003, 11:00
    #32141834
Ильшат
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
Используй другие компоненты TRxDBGrid, например, там это можно или перепиши DBGrid))). А вообще, по правой клавише PopupMenu должно быть. А все настройки грида, которые ты хотишь перед этим сделать - так их можно сделать:
По событии OnPopup комп-ты TPopupMenu

По событии выбора конкретного пункта всплывшего меню

Ну еще как-нибудь через чё-нибудь..
...
Рейтинг: 0 / 0
16.04.2003, 11:04
    #32141840
ZrenBy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
Да уж.
Вообще то вариантов масса. Как пример.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
procedure TfMain.FormCreate(Sender: TObject);
begin
  Application.OnMessage := onMess;
end;

procedure TfMain.onMess(var Msg: TMsg; var Handled: Boolean);
begin
 if(Msg.message=WM_RBUTTONDOWN)then begin
    if(Msg.hwnd = DBGrid1.Handle)then begin
      Application.MessageBox('!!!','', 0 );
    end;
  end;
  Handled := False;
end;
...
Рейтинг: 0 / 0
16.04.2003, 12:51
    #32142028
SergeyS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как для правой клавиши мыши назначить событье
Окей!!!! Спасибо господа за помощь...
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как для правой клавиши мыши назначить событье / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]