Меню дисков. Позиционирование без перехода.

Здесь обсуждается всё, что касается макросов.
User avatar
Smitis
Posts: 1709
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 23 times
Been thanked: 55 times

Post by Smitis »

Latest post of the previous page:

DrKnS
Кстати, по поводу диска B:
Монтирование туда флешки снимает проблему
Не снимет. Так как при подключении другой флешки опять будет по-старому. А если и другую флешку монтировать на В, система благополучно забудет про первую флешку. Да и воткнув в другой USB система опять назначит флешке первый свободный диск после С.
Разум когда-нибудь победит.
User avatar
HaRT
Moderator
Posts: 10822
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Снова о позиционировании на нужный диск в меню

Post by HaRT »

И где только была моя сообразительность, когда я делал это!?

Ведь то же самое делается (почти) одинаковым для всех букв макросом вида

Code: Select all

%c = "Ы";
$If ( CheckHotkey ( %c ) )
  %abc = "ABCDEFGHIJKLMNOPQRSTUVWXYZ#0123456789";
  %i = 0;
  Home
  $Rep ( index ( %abc, %c ) )
    $If ( CheckHotkey ( substr ( %abc, %i, 1 ) ) )
      Down
    $End
    %i = %i + 1;
  $End
$Else
  AltЫ
$End
Прилагаю результат (для единообразия ещё и с цифрами).

2007-09-04
Для сборок начиная с 2248 задача решается ещё проще за счёт появления функции GetHotKey.
Attachments
PositionToDrive.1.7z
Позиционирование в меню дисков на нужную строку посредством Alt<Буква/Цифра>
(713 Bytes) Downloaded 316 times
Last edited by HaRT on Tue 04 Sep, 2007 11:44, edited 1 time in total.
maxdrfl
Posts: 486
Joined: Mon 04 Apr, 2005 14:36
Location: Иркутск

Post by maxdrfl »

Казалось бы что должна работать команда

Code: Select all

"Sequence"="%c=waitkey(1000); $If ( CheckHotkey ( %c ) ) %abc = \"abcdefghijklmnopqrstyvwxyz#0123456789\"; %i = 0; Home $Rep ( index ( %abc, %c ) ) $If ( CheckHotkey ( substr ( %abc, %i, 1 ) ) ) Down $End %i = %i + 1; $End  $End 
но видимо waitkey не предотвращает отправку нажатия клавиши в меню. Поэтому макрос не только переходит, но и нажимает.
shamilbi
Posts: 49
Joined: Fri 09 Mar, 2007 07:12
Location: Томск

Post by shamilbi »

а разве плагин drives_info не закрывает тему?
maxdrfl
Posts: 486
Joined: Mon 04 Apr, 2005 14:36
Location: Иркутск

Post by maxdrfl »

а заечм использовать Drive Info если можно просто намакросить?
User avatar
[e]Bu$ter
Posts: 792
Joined: Mon 30 May, 2005 23:05
Location: Беларусь, Минск
Contact:

Post by [e]Bu$ter »

а заечм использовать Drive Info если можно просто намакросить?
А по моему Drive Info как круче выбрасывает флешки, чем стандартная фича. А тот диалог который через меню команд вызвать можно, вообще через раз отклчает... и висит по долгу, если не получается.
maxdrfl
Posts: 486
Joined: Mon 04 Apr, 2005 14:36
Location: Иркутск

Post by maxdrfl »

не разу не замечал... когда под Windows работал. (:

сейчас флешки так не отключаются.
User avatar
Александр Кряжев
Posts: 882
Joined: Sun 03 Dec, 2006 10:09
Location: Москва
Has thanked: 2 times
Contact:

Post by Александр Кряжев »

Простите, сельского парня... А что значит "выбрасывать/отключать" флэшки?..
User avatar
[e]Bu$ter
Posts: 792
Joined: Mon 30 May, 2005 23:05
Location: Беларусь, Минск
Contact:

Post by [e]Bu$ter »

Обычно такой вопрос задают те, кто их всю жизнь на горячую выдёргает :shock:

выбрасывать/отключать — "демонтировать", "остановливать" или "делать чтоб лапмочка потухла" (слышал такое определение как-то...). Понятней? :P

Отключение — это подготовка сменного устройства к безопасному (обычно, для (usb) порта) извлечению. Потому как без отключения, извлекать устройство формально запрещено.
maxdrfl
Posts: 486
Joined: Mon 04 Apr, 2005 14:36
Location: Иркутск

Post by maxdrfl »

в общем бывает, я и так выдергиваю ;)

для cdrom эта опция полезней, он выплевываться умеет...
User avatar
HaRT
Moderator
Posts: 10822
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Post by HaRT »

maxdrfl wrote:для cdrom эта опция полезней, он выплевываться умеет...
В меню дисков Del и ShiftDel — это два разных действия.
maxdrfl
Posts: 486
Joined: Mon 04 Apr, 2005 14:36
Location: Иркутск

Post by maxdrfl »

я может не так выразился, я имел в виду позиционирование в меню дисков.
User avatar
HaRT
Moderator
Posts: 10822
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Post by HaRT »

Начиная со сборки 2248 задача решается совсем просто:

Code: Select all

%c = "Ы"; 
$If ( CheckHotkey ( %c ) )
  Home 
  $While ( GetHotKey(0) != %c )
    Down 
  $End
$Else
  AltЫ 
$End
Результат для букв и цифр прилагается.
Attachments
PositionToDrive.2.7z
Позиционирование в меню дисков на нужную строку посредством Alt<Буква/Цифра> для сборок начиная с 2248
(662 Bytes) Downloaded 263 times
maxdrfl
Posts: 486
Joined: Mon 04 Apr, 2005 14:36
Location: Иркутск

Post by maxdrfl »

Для любой буквы.
Вешается на alt.

Как использовать: нажать и отпустить alt, нажать букву.

Code: Select all

%c=ucase(waitkey(1000)); 
$If ( checkhotkey ( %c ) ) 
    Home 
   $While ( gethotkey(0) != %c ) 
    Down 
   $End
$End
User avatar
ort
Posts: 22
Joined: Wed 19 Oct, 2005 17:13
Location: Україна

Post by ort »

maxdrfl wrote:Как использовать: нажать и отпустить alt, нажать букву.
Не работает - может быть, пропущено AltF1/AltF2?
maxdrfl
Posts: 486
Joined: Mon 04 Apr, 2005 14:36
Location: Иркутск

Post by maxdrfl »

вообще то макрос надо вызывать из диалога выбора дисков, а не из панелей.
Locked

Return to “Обсуждение макросов”