Конференция "Основная" » Шоткаты [D7, WinXP]
 
  • Domkrat (19.03.08 15:30) [0]
    На главной форме, в главном меню есть кнопка с ShortCut = del, и на этой же форме есть TEdit.
    Вопрос, как отключать срабатывание ShotCut в главном меню, в момент когда я редакирую в TEdit, TMemo etc..?
  • NewZ (19.03.08 23:26) [1]
    У тебя главное меню. Кнопка называется допустим N1.
    Тогда
    N1.ShortCut := 'None' или N1.Enabled := False;

    Должно помочь -).
  • Kolan © (20.03.08 09:57) [2]
    Правильный ответ я незнаю, но можно попробовать написать такой обработчик OnUpdate у Экшена.

    procedure TForm1.Action1Update(Sender: TObject);
    begin
     if Sender is TAction then
       (Sender as TACtion).Enabled := not Edit1.Focused;
    end;
  • Leonid Troyanovsky © (20.03.08 11:03) [3]

    > Kolan ©   (20.03.08 09:57) [2]

    > Правильный ответ я незнаю

    Не назначать такие горячии клавиши :)

    Ну, или обрабатывать ручками

    procedure TForm1.N21Click(Sender: TObject);
    begin
     if ActiveControl is TCustomEdit then
       with TCustomEdit(ActiveControl) do
         begin
           if SelLength = 0 then
             SelLength := 1;
             if SelText[1] = #13 then
               SelLength := 2;
           SelText := '';
         end;
    end;


    --
    Regards, LVT.
  • Kolan © (20.03.08 11:34) [4]
    > Ну, или обрабатывать ручками

    Уж лучьше, имхо, там где надо Del в OnKeyDown ловить, чем такое делать вручную…
  • Domkrat (20.03.08 15:21) [5]
    Спасибо всем, понял, что универсального лекарства от этого нет.

    Я думал, что можно как то перехватить сообщение message на TAplication во время редактирования, например в TEdit, и запретить его отрабатываться в главном меню.    

    Попробую еще покапать в этом направлении.
  • Игорь Шевченко © (20.03.08 15:31) [6]

    > Спасибо всем, понял, что универсального лекарства от этого
    > нет.


    Есть. Не делать пункт главного меню с таким шорткатом
  • {RASkov} © (20.03.08 15:34) [7]
    > [5] Domkrat   (20.03.08 15:21)
    > Попробую еще покапать в этом направлении.

    Лучше копай(или капай капли) в направлении певого предложения из [3] :) т.е.

    > Не назначать такие горячии клавиши

    Имхо.... ну этож надо додуматься чтоб при наличии редакторов текста например, и стандартной кнопки удаления, назначить на кнопку другое действие и еще быть не довольным при этом :)
  • {RASkov} © (20.03.08 15:38) [8]
    > [5] Domkrat   (20.03.08 15:21)

    Впрочем задача решаема...возможно... но зачем?!
  • Игорь Шевченко © (20.03.08 16:20) [9]

    > Лучше копай(или капай капли) в направлении певого предложения
    > из [3]


    тут такой момент: Del действует не только на TCustomEdit
 
Конференция "Основная" » Шоткаты [D7, WinXP]
Есть новые Нет новых   [134484   +49][b:0][p:0.001]