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

Вниз

Запретить печать из TWebBrowser   Найти похожие ветки 

 
Виктор   (2010-04-01 02:10) [0]

Здравствуйте! Хочу запретить печать из TWebBrowser по Ctrl-N. Перехватывать комбинацию Ctrl-N для решения этой задачи не хочется, как правильно быть?


 
Виктор   (2010-04-01 02:11) [1]

Простите опечатался, конечно имелась ввиду печать по Ctrl-P


 
Виктор   (2010-04-01 08:55) [2]

Как полумеру можно вписывать в отображаемую страницу код:

<style type="text/css" media="print">
 BODY {display:none;visibility:hidden;}
</style>


Но это изврат)


 
sniknik ©   (2010-04-01 09:28) [3]

это печать
WebBrowser.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER);

также можно сделать многое другое (когда смотрел это видел кучу других параметров) возможно и запрет печати тоже. поищи.


 
Виктор   (2010-04-01 09:59) [4]

Я реализовал IWebBrowser2 для компонента, что бы перехватить и обработать вызов ExecWB и QueryStatusWB. Но когда в браузере нажимаешь Ctrl-P ни один из методов не вызывается. Да и понимания COM у меня недостаточно что бы копнуть глубже..


 
sniknik ©   (2010-04-01 10:05) [5]

не нужно ничего перехватывать, нужно настроить, команда та же, нужно просто вызвать этот же самый метод с параметрами "запрета печати по Ctrl-P" если такие есть (вот это и ищи, в msdn есть развернутый список, я не смотрел конкретно т.к. было не нужно), или более общее, запретить всю печать из объекта(это точно должно быть) и при нужде выполнять печать самому вышеприведенной командой.


 
Виктор   (2010-04-01 10:10) [6]

Спасибо! Буду шерстить MSDN)


 
Loginov Dmitry ©   (2010-04-01 20:11) [7]

Я когда-то тоже искал ответ на такой же вопрос.
Оказалось, что перехватить нажатие Ctrl+P можно до печати, но как отменить печать я найти не смог. Хотя и перекопал весь MSDN.
Решил не заморачиваться: после перехвата Ctrl+P вывожу пользователю сообщение какой он плохой и грохаю программу с помощью TerminateProcess().

Если найдешь что-нибудь, то отпишись, pls!


 
Игорь Шевченко ©   (2010-04-01 20:19) [8]

Тенцер на сайте у А.П.


 
Anatoly Podgoretsky ©   (2010-04-01 20:24) [9]

> Игорь Шевченко  (01.04.2010 20:19:08)  [8]

Самый полный Тенцер :-)


 
MonoLife ©   (2010-04-02 08:07) [10]

вариант:
TApplicationEvents на форму

В TApplicationEvents.onMessage пишем:

if (GetKeyState(VK_CONTROL) < 0) and (Msg.Message = WM_KEYDOWN) and (Msg.wParam = 80) then
 ShowMessage("Нельзя печатать!");

:)


 
MonoLife ©   (2010-04-02 08:17) [11]

блин, ему ж перехват не хочется(


 
Виктор   (2010-04-08 18:27) [12]

Да.. плюнул я на затею сделать как положено, оставил костыль в виде блокировки хоткея в TApplicationEvents.OnMessage



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

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

Наверх




Память: 0.47 MB
Время: 0.062 c
2-1271556108
[true]TRIx
2010-04-18 06:01
2010.08.27
ищу пример многопоточного копирования одного файла побайтно


15-1264861183
Делфиец
2010-01-30 17:19
2010.08.27
Физическое чтение диска


15-1269551843
boa_kaa
2010-03-26 00:17
2010.08.27
Броузеры: очередное соревнование


2-1268143587
DROWSY
2010-03-09 17:06
2010.08.27
Font TMenu.


2-1270132693
vlad2
2010-04-01 18:38
2010.08.27
Искажение иконок в трее





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский