Клуб Punto Switcher

Scroll Lock при русской раскладке

22 июня 2011, 22:00

Привет!

Ребята, а можно сделать так, чтобы при переключении на русский язык загоралась лампочка Scroll Lock на клавиатуре, а при английской - гасла? Очень надо.

Заранее спасибо!

6 комментариев

Есть две программы в которых Scroll Lock используется. Это Excel и TeamViewer. Конфликт предложеной  функции с этими программами гарантирован.

 

Идея со скрул локом отличная! А вот по поводу конфликтов,

можно просто сделать галку такого вида, "Использовать лампочку скрул лок при переключении  раскладки/или нет". Я вот Икселем пользуюсь по 7 часов в сутки, и скрул лок никогда в жизни не использовал. Поэтому поддерживаю просьбу +1

(+1)

 

 

 

 

Попробуйте включить Scroll Lock на компьютере пользователя, который иногда работает в Excel, но не знает, для чего нужен Scroll Lock. У вас будет наглядная возможность посмотреть, как будет вести себя человек с PuntoSwitcher c поддержкой Scroll Lock. Это первое.

Второе. Представте, что эта функция у вас есть уже давно, вы к ней привыкли и для того, чтобы узнать язык раскладки, вы смотрите на лампочку Scroll Lock. Допустим Выкл = Английская, а Вкл = Русская. При работе в Excel'e вы будете видеть, что всегда включена Английская раскладка, а в TeamViewer - Русская. Если вы выкинули значок раскладки из трея, то возможности узнать о правильной раскладке вообще не будет.

Это два СИЛЬНЫХ раздражающих фактора, которые невозможно преодалеть. Это главная причина, по которой такую функцию в программу добавлять не стоит.

Не совсем удачный пример раздражающего фактора, но всё-таки. Вам предлагают автомобиль (Punto Switcher) на выбор. Оба со всеми удобствами. Но один едет со скоростью 100 км/ч (нет Scroll Lock), а другой со скоростью 200 км/ч (есть Scroll Lock). У второго есть особеность, через каждые 50 км он останавливается (Excel, TeamViewer). Его нужно потолкать всего пол метра (закрыть Excel, TeamViewer) и он едет дальше. Какой вы выберите?

Смотрю, тема всех заинтересовала.

Наиль, вероятно, можно было бы создать правило - не использовать ScrollLock в определенных программах.

Я нашел программку которая включает лампочку ScrollLock при русской раскладке. На просторах интернета их нашлось даже две. Попробуйте эту программу с экселем, будет ли она мешать пользователю? KbLangLED называется. Если пользователю экселя она мешать не будет, то стоит такую опцию ввести и в пунтосвитчере.

если не найдёте в и-нете, напишите мне, вышлю её по почте.

covvex,



Вероятно, Вы использовали KBLangLed и поэтому пришли к такому выводу. Однако, в этой программе происходит вот что:
const
VKeyCodes: array[TKbLEDTag] of Byte = (VK_NUMLOCK, VK_CAPITAL, VK_SCROLL);
ScanCodes: array[TKbLEDTag] of Byte = ($45, $3A, $46);
begin
keybd_event(VKeyCodes[LEDTag], ScanCodes[LEDTag], KEYEVENTF_EXTENDEDKEY +
Ord(not KeyDown) * KEYEVENTF_KEYUP, 0);
end;


Проще говоря, симулируется нажатие кнопки ScrollLock.
А надо, чтобы просто загоралась лампочка через порты. И тогда (вероятнеее всего) Excel не будет ведать о том, что горит что-то не то и будет работать не замечая подмены. Нажатие кнопки SCROLLOCK приведёт к тому, что ситуация станет обратной - гарантированное отображение состояния скрола и негарантированное - клавиатуры. Это небольшое досадное недоразумение, как выше было сказано, является крайней редкостью. Я, например, не использую скроллок с ДОС`a. Вообще ни разу.