0 Members and 3 Guests are viewing this topic.
Ребят что-то я не могу допетрить, как сделать чтобы в кастомном контекстном меню, имя пункта бралось из локализации его имени в АИМП?Вообще по умолчанию было бы неплохо брать имя из локали, если кастомное не назначено
ShowMessage в скрипте выполняется при применении скина. То есть без изменения значения ScriptableOperatorCounter.Это так и задумано?
Чем отличаются варианты качества рендеринга шрифта "Черновое 1" и "Черновое 2"?
И вариант "По умолчанию" представляет собой отличный от остальных вариант или "дублирует" какой-то другой?
Quote from: Black_AVP on March 16, 2015, 11:13:07А, может, через скрипты можно обратиться прямо к провайдеру, типа: prvEqualizer.Set('Band10', 100)Вот такой вариант был бы более правильным, сделаю
А, может, через скрипты можно обратиться прямо к провайдеру, типа: prvEqualizer.Set('Band10', 100)
Значит изменение было, без изменения оно не может вызываться.
procedure Execute(var State: Integer);var ACounter: TComponent; temp: integer;begin ACounter := FindObject('NewLogicalOperatorCounter'); temp := ACounter.Get('Position'); ACounter.Set('Position', temp + 1); ShowMessage('OK');end;
ACounter.Set('Position', Inc(ACounter.Get('Position')));
ACounter.Get('Position')) - есть такой?
temp := ACounter.Get('Position');
При этом сторонний счётчик не увеличивается. То есть скрипт срабатывает не полностью, а только ShowMessage.
procedure Execute(var State: Integer);Var Comp: TComponent; Pos: Integer; begin Comp:= FindObject('LogCntr'); Pos:= Comp.Get('Position'); Inc(Pos); Comp.Set('Position', Pos); ShowMessage(IntToStr(Pos));end;
А это уже возможно?
Накидал тестовый проект:Скрипт:Code: [Select]procedure Execute(var State: Integer);var ACounter: TComponent; temp: integer;begin ACounter := FindObject('NewLogicalOperatorCounter'); temp := ACounter.Get('Position'); ACounter.Set('Position', temp + 1); ShowMessage('OK');end;При срабатывании скрипта инкрементируется сторонний счётчик и показывается сообщение.Если значение скриптового счётчика равно 0, то, при переключении на любой другой скин и обратно (или перезапуске плеера), всё нормально.Но, если значение равно 1, то, при переключении на другой скин и обратно, сначала вылетает сообщение, а потом появляется скин.При этом сторонний счётчик не увеличивается. То есть скрипт срабатывает не полностью, а только ShowMessage.
Если закрыть плеер и вновь запустить, то в сообщении будет 1, а DigitsDisplay будет показывать значение из прошлой сессии, и только при нажатии кнопки эти значения сравняются.Но, если закрыть плеер с другим скином, вновь запустить и переключиться на этот экпериментальный, то сообщение не выводится и в DigitsDisplay- 0.Может, при инициализации скина, когда первый раз обрабатывается скрипт, этот счётчик ещё не существует (хотя DigitsDisplay его значение помнит ), а ошибки в скрипте просто игнорируются...
Да.
FindObject('prvEqualizer') - прокатывает, а вот на имя 'Band1' ... 'Band18' компилятор делфи ругается.Как правильно обратиться к провайдерам?