Вверх ↑
Этот топик читают: Гость
Ответов: 16884
Рейтинг: 1239
#31: 2011-05-11 01:18:00 ЛС | профиль | цитата
1nd1g0 писал(а):
точки данных у Вас - функции.
А может уже и у Вас ?
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26300
Рейтинг: 2146
#32: 2011-05-11 01:23:06 ЛС | профиль | цитата
1nd1g0 писал(а):
В процессе разбора полётов заодно выяснил для себя, что точки данных у Вас - функции

Да, все правильно, что дает еще одну особенность построения интерфейса -- вертикальное программирование. Одно из его прямого применения -- использование точки reCalc в MathParthe без применения EventFromData
карма: 22

0
Ответов: 1132
Рейтинг: 81
#33: 2011-05-11 01:53:51 ЛС | профиль | цитата
nesco писал(а):
Если его применяют, то что-то наталкивает на это

nesco, скорей всего ничто не наталкивает, просто у новичков поначалу логика не правильная.
Кто то уже говорил об етом(вроде 1nd1g0) что DoData и EventFromData размещены на палитре вместе, соответственно, по логике новичков, первый берет данные с верхней точки и передает в поток значит второй компонент делает все да наоборот. Поэтому как вариант либо переместить EventFromData в другое место, либо вовсе сделать невидимым. Для новичков он нафиг не нужен, а опытные сами добавят на палитру.
Ну или второй вариант (лично мне не нравится) добавить конвертер на нижнюю точку. Как точно называется не знаю, где то на форуме я его встречал, но лень искать.

карма: 2

0
Разработчик
Ответов: 26300
Рейтинг: 2146
#34: 2011-05-11 02:01:00 ЛС | профиль | цитата
tom-it писал(а):
Ну или второй вариант (лично мне не нравится) добавить конвертер на нижнюю точку.

Это как, подробнее можно -- конвертор чего на нижнюю точку
карма: 22

0
Ответов: 1132
Рейтинг: 81
#35: 2011-05-11 02:09:08 ЛС | профиль | цитата
Тему такую нашел Конвертор с нижней точкой но ето не то. Наверное я что то попутал с названием.

Но компонент какойто точно был.
Еще, если память не подводит, ктото писал что использует для этих целей толи Label, толи Edit с Visible=False. После чего фигурировал какойто "левый" компонент.
Сейчас специально искал, но так и не нашел. Да и фиг с ним, с етим компонентом.
В любом случае добавление лишнего компонента не лучший вариант. Как по мне, то спрятать EventFromData подальше от новичков, а кому надо тот добавит в палитру.

[offtop]Блин хотел добавить пару слов, а удалил случайно прежде написанное[/offtop]


карма: 2

0
Ответов: 16884
Рейтинг: 1239
#36: 2011-05-11 12:14:47 ЛС | профиль | цитата
nesco писал(а):
Исправления внесены на SVN

Загрузил ~4-х минутную песню.
Считал точку Length = 286.5146875
Так в каких единицах измеряем ?????
Судя по всему в Real и в секундах с ох...... точностью
Если на заборе написано ... - не верь глазам своим.


карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 3889
Рейтинг: 362
#37: 2011-05-11 12:18:50 ЛС | профиль | цитата
Tad, в секундах с плавающей запятой
[flood]------------ Дoбавленo в 12.18:
Вообще компонент очень сырой, как мне показалось. Не только в точках и комментариях неточности, он реализует микроскопическую часть функционала DirectShow, и ту - криво. И примеров "маловато".[/flood]
карма: 1

0
Ответов: 16884
Рейтинг: 1239
#38: 2011-05-11 12:23:45 ЛС | профиль | цитата
nesco, откатывай SVN
1nd1g0 писал(а):
Вообще компонент очень сырой
Это мы сырые.
Народная мудрость писал(а):
Семь раз отмерь, раз отрежь

До вечера - погнал на работу.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 3889
Рейтинг: 362
#39: 2011-05-11 12:42:02 ЛС | профиль | цитата
Tad писал(а):
nesco, откатывай SVN
Это автор компонента всех запутал, а nesco про миллисекунды ничего не писал, он только правильный тип точкам назначил и больше ничего не трогал. Так что не откатывать, а "накатывать" очередное исправление надо, уточняющее в комментарии, что данные - в секундах с плавающей запятой.
карма: 1

0
Разработчик
Ответов: 26300
Рейтинг: 2146
#40: 2011-05-11 13:05:30 ЛС | профиль | цитата
Действительно, что-то автор не дочитал MSDN

MSDN писал(а):
IMediaPosition::get_Duration Method

The get_Duration method retrieves the duration of the stream.
Syntax
HRESULT get_Duration(
[out] REFTIME *plength
);

Parameters
plength [out]

Pointer to a variable that receives the total stream length, in seconds.


Тоже самое относится и к IMediaPosition::get_CurrentPosition Method
------------ Дoбавленo в 13.05:
1nd1g0 писал(а):
в секундах с плавающей запятой

"в секундах типа Real", мы так пишем.
карма: 22

0
Ответов: 3889
Рейтинг: 362
#41: 2011-05-11 13:10:25 ЛС | профиль | цитата
nesco, главное, чтобы бросалось в глаза "в секундах", а то человек вон, плеер пишет, а у него считается какая-то фигня, оно и понятно, размерностью "ошиблись", да ещё обрезанным куском, в Integer выдавали )
карма: 1

0
Разработчик
Ответов: 26300
Рейтинг: 2146
#42: 2011-05-11 13:17:25 ЛС | профиль | цитата
Поправил, если Автору не понравится, то сам пусть доводит напильником
карма: 22

0
Ответов: 3889
Рейтинг: 362
#43: 2011-05-11 13:23:04 ЛС | профиль | цитата
nesco, мне кажется, Автор это всё давно читает и ему немножко совсем не до этого)
------------ Дoбавленo в 13.23:
Serge BY, Вы ещё с нами? Для Вас же стараемся. Теперь знаете, что делать? (это я топик стартеру, если кто запамятовал)
карма: 1

0
Ответов: 8
Рейтинг: 0
#44: 2011-05-11 13:27:33 ЛС | профиль | цитата
1nd1g0, конечно слежу и пытаюсь отследить ход мыслей умных людей
карма: 0

0
Ответов: 3889
Рейтинг: 362
#45: 2011-05-11 13:57:04 ЛС | профиль | цитата
Serge BY, за терпение и тягу к знаниям немного намекну по теме: Закройте HiAsm, обновите [svn]hiDirectShowPlayer.pas[/svn] (если наведёте на ссылки, в подсказке будет написано, куда копировать), потом попробуйте это:

Add(MainForm,2953706,224,126)
{
Height=28
Position=1
link(onCreate,1770600:doExecute,[])
}
Add(DirectShowPlayer,13634981,504,140)
{
link(onEndPlay,1377215:doStop,[(548,146)(548,247)(239,247)(239,370)])
}
Add(ODialog,1770600,287,140)
{
Filter="MP3 music|*.mp3"
Title="Укажите MP3-файл"
FileName="music"
link(onExecute,12474819:doEvent1,[])
}
Add(Timer,1377215,287,357)
{
Enable=1
link(onTimer,16609028:doCalc,[])
}
Add(Hub,12474819,455,140)
{
link(onEvent1,13634981:doPlay,[])
link(onEvent2,1377215:doTimer,[(481,153)(481,194)(277,194)(277,363)])
}
Add(FormatStr,2475151,504,357)
{
Mask="%1 min %2 sec"
link(onFString,2953706:doCaption,[(570,363)(570,103)(212,103)(212,132)])
link(Str1,16609028:Result,[(510,288)(432,288)(432,401)(342,401)])
link(Str2,5374294:Result,[(517,319)(469,319)(469,426)(398,426)])
}
Add(MathParse,16609028,336,357)
{
MathStr="%1 div 60"
ResultType=0
link(onResult,5374294:doCalc,[])
link(X1,347766:Var1,[(342,209)])
}
Add(MathParse,5374294,392,357)
{
MathStr="%1 mod 60"
ResultType=0
link(onResult,2475151:doString,[])
link(X1,347766:Var2,[(398,229)(397,229)])
}
Add(GetDataEx,347766,391,204)
{
Angle=1
link(Data,13634981:Position,[(510,209)])
}



карма: 1

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)