All Forums
 Категория Visio
 Форум Вопросы и ответы
 Отключение горячих клавиш
Author Previous Topic Topic Next Topic  

TuzhibaevTA

Russia
85 Posts

Posted - 08/29/2005 :  17:08:39
Уважаемые, как отключить горячие клавиши в компоненте Visio?


Тужибаев Тимур

Voland

91 Posts

Posted - 09/05/2005 :  16:06:15
А что именно ты хочешь получить?
Я тоже сейчас работаю с этой проблемой.

___ Кто ищет тот найдет __
Go to Top of Page

TuzhibaevTA

Russia
85 Posts

Posted - 09/13/2005 :  16:20:29
quote:
Originally posted by Voland

А что именно ты хочешь получить?
Я тоже сейчас работаю с этой проблемой.

___ Кто ищет тот найдет __



Я пользую контрол Visio и в моей програмке ну никак не планируется появление окошка поиска, открытия хелпа и т.п. от visio. У контрола есть возможность отключения большинства команд прям из свойств контрола , но почему то отключаются не все команды :(

Тужибаев Тимур
Go to Top of Page

Voland

91 Posts

Posted - 09/13/2005 :  16:29:29
Как я понял ты используешь DrawingControl. Да, действительно он не перекрывает всех действий, но я хочу сейчас попробовать перехватывать его WinProc и там уже анализировать что нужно/можно что нет. Можем заняться напару этим делом. Думаю, именно для этого и сделали доступной эту процедуру в компоненте, хотя не факт...

___ Кто ищет тот найдет __
Go to Top of Page

mers

Russia
159 Posts

Posted - 09/14/2005 :  16:39:12
может быть проще переопределить эти же горячие клавиши в самой программе?... т.е не касаясь дровинг контрола?..

и если можно расскажите как вы хоть какие то команды отключили?

Edited by - mers on 09/14/2005 16:39:41
Go to Top of Page

TuzhibaevTA

Russia
85 Posts

Posted - 09/15/2005 :  06:41:19
quote:
Originally posted by mers

может быть проще переопределить эти же горячие клавиши в самой программе?... т.е не касаясь дровинг контрола?..

и если можно расскажите как вы хоть какие то команды отключили?



Drawningcontrol.negotiatemenus = true
Drawningcontrol.negotiatetoolbars = true

Тужибаев Тимур
Go to Top of Page

Rozo

6 Posts

Posted - 01/03/2006 :  15:24:52
Уважаемые, hotelos' by uznat' 4to-nibud; u vas polu4ilos'?

S CTRL+V boryus' elementarenym

Clipboard.Clear

in the DrawningControl_KeyDown event

A vot CTRL+D napryagaet.
Ostal'nye горячие клавиши ne meshayut funkzional'nosti moey application.
Go to Top of Page

Voland

91 Posts

Posted - 01/10/2006 :  10:46:13
Функциональные клавиши как то оключил, уже не помню как... вспомню напишу, а вот с контрл+С контрл+V сделал так:
На событие ОнКейАп поставил
if (KeyCode=17) or (KeyCode=16) then begin
AddShapeOK:=true;
end;
На событие ОнКейДавн поставил
if (KeyCode=17) or (KeyCode=16) then begin
AddShapeOK:=False;
end;

На событие ОнШейпАддедед

if AddShapeOK then begin
Тут типа нормально, добавили и попачили если надо
end else begin
Shape.Cells['LockDelete'].Formula:='0';
Shape.Delete;
end;






___ Кто ищет тот найдет __
Go to Top of Page

Voland

91 Posts

Posted - 01/10/2006 :  10:50:48
А вспомнил... Вобщем сделал немного кривовато, но пока других способов не искал...
Вобщем кинул на форму (я в Делфи) компонент ApplicationEvents и внем на событии OnMessages вставил код
if (Msg.message=WM_KEYDOWN) then begin
If (Msg.wParam>=112) and (Msg.wParam<=121) then begin
Msg.wParam:=0;//Тут отключил все функциональные клавиши
end;
If (Msg.wParam>=221) then begin
Msg.wParam:=0; //Тут помоему Ctrl+D :)))
end;
end;

Вобщем так можно всю клаву отключить :)

Криво но пока устраивает... :(


___ Кто ищет тот найдет __
Go to Top of Page

Rozo

6 Posts

Posted - 01/10/2006 :  14:24:50
Ya rabotayu v VB6 tam eto tak sdelat' trudnee.
Budu probovat'.
Spasibo za sovet.
Go to Top of Page
  Previous Topic Topic Next Topic  
Данный сайт является архивом форума visio.artberg.ru, который был закрыт в связи с переходом на новую платформу visio.getbb.ru
Все материалы доступны только для чтения! Если у вас появились вопросы, или вы хотите что-то обсудить, связанное с Visio, обращайтесь на новый форум!
Архив был создан благодаря совместным усилиям Генадия Туманова @Tumanov (visio.artberg.ru), Александра ака @Surrogate (visio.getbb.ru), и Николая Белых @nbelyh (unmanagedvisio.com)