Модераторы: diadiavova, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> WMP в VB.NET, помогите разобраться начинающему. 
V
    Опции темы
timich
Дата 23.1.2009, 04:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 4.12.2008

Репутация: нет
Всего: нет



Начал изучать VB.NET по книжке С.Н.Лукина, классная книжка, до этого не имел ничего общего с программированием, решил изучить но уперся в этот плеер(((

Вот цитата из книги:

        Плеер.FileName = "E:\WINNT\Media\Windows Logon Sound.wav"
        Плеер.Play()

Здесь: 
•    Плеер – это наш объект плеер. 
•    FileName – это его свойство (имя, адрес файла). В кавычках указывается полный адрес файла. 
•    Play – это метод объекта Плеер – приказ начать воспроизведение.

в окне кода подчеркивается как ошибка, не могу ничего понять((((
подскажите плиз че делать.
PM MAIL   Вверх
diadiavova
Дата 23.1.2009, 05:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Это зависит от того, о каком медиаплеере речь и как ты его создавал. Если это ActiveX элемент, то там действительно нет ни свойства FileName, ни метода Play. 

Это сообщение отредактировал(а) diadiavova - 23.1.2009, 05:49


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
timich
Дата 23.1.2009, 06:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 4.12.2008

Репутация: нет
Всего: нет



Поместил Windows Media Player в Toolbox, а оттуда – на форму.

PM MAIL   Вверх
diadiavova
Дата 23.1.2009, 06:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Вот я тут набросал, но использовать ActiveX - плохая идея. 

Присоединённый файл ( Кол-во скачиваний: 40 )
Присоединённый файл  WMPSmpl.rar 198,17 Kb


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
timich
Дата 23.1.2009, 07:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 4.12.2008

Репутация: нет
Всего: нет



Вот фрагмент из самоучителя, который я пытаюсь повторить. Кстати я не говорил, я пользуюсь VS.NET 2003 так как самоучитель по этой версии. 

Присоединённый файл ( Кол-во скачиваний: 15 )
Присоединённый файл  _________Microsoft_Office_Word.rar 95,55 Kb
PM MAIL   Вверх
diadiavova
Дата 23.1.2009, 08:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Это, видимо, старый медиаплеер. В новом всё по-другому. Что до студии: если есть возможность  - поставь последнюю. Все фичи из прошлых версий там поддерживаются. Что до моего примера, то сейчас ты можешь просмотреть код и запустить бинарник, увидеть как он работает. Коротко:
Код

Плеер.URL = "E:\WINNT\Media\Windows Logon Sound.wav"




--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
timich
Дата 23.1.2009, 16:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 4.12.2008

Репутация: нет
Всего: нет



Да, в самоучителе старый медиа плеер, а у меня стоит новый, но я думал нет разницы )))
Блин столько возился и ничего не получалось. А как же управлять новым?? Ведь в коде нужно применять плэй стоп пауза и все такое.
Например в проекте Будильник (там плеер не видим). Или какой то совсем другой способ можно использовать для воспроизведения звуковых и видео файлов (не медиа плеер)??
Студию 2008 тоже установил.

С уважением, timich.

Это сообщение отредактировал(а) timich - 23.1.2009, 16:04
PM MAIL   Вверх
diadiavova
Дата 24.1.2009, 04:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Ну, если

Цитата(timich @  23.1.2009,  16:02 Найти цитируемый пост)
Студию 2008 тоже установил.

тогда может это тебя утешит.

Присоединённый файл ( Кол-во скачиваний: 34 )
Присоединённый файл  PlayerTest.rar 105,33 Kb


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
timich
Дата 24.1.2009, 21:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 4.12.2008

Репутация: нет
Всего: нет



Спасибо. Посмотрел. Разобраться не получилось)))
Верней посмотреть, попользовать получилось, а вставить в свою форму не смог))
Возможно все таки рановато мне такие тонкости(((
Есть вещи которые я пока не понимаю в принципе.
Ладно, продолжу последовательно изучать по самоучителю.
Думаю со временем пойму то, что сейчас не понимаю.

С уважением, timich.

Это сообщение отредактировал(а) timich - 24.1.2009, 21:06
PM MAIL   Вверх
DesTPor
Дата 25.1.2009, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 10.4.2008

Репутация: нет
Всего: нет



посмотри здесь мой исходник, там всё понятно описано http://www.vbstreets.ru/VBdotNET/Sources/66531.aspx
PM MAIL   Вверх
alexlutz
Дата 29.9.2009, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 29.9.2009

Репутация: нет
Всего: нет



Уважаемые форумчане!

Я совершенный новичок в vb .net. Установлена вижиал студия 2008 и 11 wmp. 
Помогите сделать плеер на основе wmp в vb .net. Просмотрел все примеры на этой странице. Все только для проигрывания одного файла.

Главное требование к моему плееру следующее. Он должен воспроизводить один за другим, без перерыва, несколько видеофайлов одинакового формата. Файлы хранятся в одной и той же директории. Можно в той же, что и exe файл после компиляции. Все абсолютные и относительные адреса известны. Но извлекать эти файлы и воспроизводить в, скажем, алфавитном порядке, плеер должен сам. Причем адреса видеофайлов и нужный порядок могут быть просто в тексте vb-программы.

Я встроил wmp из тулбокса в форму с кнопкой Пуск, обозвал его Player и написал простейший код в клике кнопки Player.URL="адрес 1" и следом Player.URL="адрес 2". Так воспроизводится только последний файл. Как я ни ухищрялся, скажем, учесть событие окончания проигрывания первого файла - не выходит. Видно, я чего-то капитального не понимаю. Помогите. 

 И если кто-нибудь отзовется, просьба написать попроще. Хотя чисто эстетически прекрасно, конечно, смотрятся примеры diadiavova и ведь работают, правда непонятно как. Заранее признателен,

alexlutz 
PM MAIL   Вверх
diadiavova
Дата 29.9.2009, 20:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



alexlutz, а ты не пробовал свойству URL передать адрес списка воспроизведения? По-моему так можно.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
alexlutz
Дата 30.9.2009, 02:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 29.9.2009

Репутация: нет
Всего: нет



diadiavova, спасибо за оперативный ответ.

Я не пробовал с адресом списка. Пробовал только с отдельными элементами списка, которые создавал по ходу дела. В сети народ тоже сталкивается с заморочками при работе со списками. Конечно, мне нужно время, чтобы разобраться со списками. В MDSN нашел о списках массу информации - и как их формировать, и как создавать библиотеки, - а вот как запускать из программы на воспроизведение, не нашел. 

Может, накропаешь примерчик запуска списка из двух файлов. Полновесных книг, да и статей по работе с медиа ни на русском, ни на английском я не нашел. У всех один и тот же классический пример плеера с браузером. А мне нужно делать меню для показа видеофайлов качества Full HD. Мои видео - это слайд-шоу, которые готовлю в отдельной программе. Преимуществ меню на VB два: файлы  Full HD вызываются, как есть, т.е. без какой-либо дополнительной рендеризации, которая их только портит; меню работает с любыми файлами, которые умеет играть wmp, в отличие от таких медиа-пакетов, как Sony Vegas 8 и разных архитекторов меню, которые не работают с файлами Full HD. Потом запускаю показ от лептопа на телек Full HD.

Извини, что загрузил ваш сайт (и, робко надеюсь, тебя лично) своей проблемой. Такого рода меню было бы интересно многим любителям создания и просмотра слайд-шоу с высоким качеством. И сайт ваш понравился дружелюбием и интеллигентностью. Пока я научился вешать в VB .NET на каждую кнопку меню один файл с одной из частей шоу. А на кнопки типа Play All вешаю слайд-шоу из всех частей целиком, благо пакеты для создания слайд-шоу и объемы хардов это позволяют. Но, понятно, это решение не от хорошей жизни.

alexlutz
PM MAIL   Вверх
alexlutz
Дата 30.9.2009, 03:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 29.9.2009

Репутация: нет
Всего: нет



timich

Посмотри примеры здесь: 
http://msdn.microsoft.com/en-us/library/ms..._player_article
http://msdn.microsoft.com/en-us/library/dd562852(VS.85).aspx

По-шаговое изложение, как раз для новичков вроде нас с тобой.

alexlutz

Это сообщение отредактировал(а) alexlutz - 30.9.2009, 03:31
PM MAIL   Вверх
diadiavova
Дата 30.9.2009, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Цитата(alexlutz @  30.9.2009,  03:42 Найти цитируемый пост)
Я не пробовал с адресом списка.
Так попробуй smile Просто сформируй список для начала при помощи плеера и вместо отдельного медиафайла передай своему плееру адрес списка. Если не получится - отпишись, будем думать.
 smile 


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
alexlutz
Дата 1.10.2009, 10:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 29.9.2009

Репутация: нет
Всего: нет



diadiavova

Сформировал вручную с помощью WMP плейлист, дал иму имя и поместил в ту же папку, где медиафайлы. Плейлист - файл с расширением wpl. Имя плеера в форме Player1. Код Player1.URL="полное имя медиа" высвечивает внизу строку Connection и проигрывает медиа. Код Player1.URL="полное имя плейлист" высвечивает пустой экран WMP, который висит, причем на нем внизу строка Ready.

alexlutz
PM MAIL   Вверх
diadiavova
Дата 1.10.2009, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Я сейчас попробовал - всё работает. Однако, если ты сформировал плэйлист, а потом переместил его, то удивляться нечему - в плейлисте указаны относительные адреса.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
alexlutz
Дата 1.10.2009, 11:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 29.9.2009

Репутация: нет
Всего: нет



diadiavova

Ура! Таки заработало.

Как же ты догадался, что я сохранил плейлист не в папке по умолчанию, а в другой, удобной для себя? 

Теперь, думаю, что заставить все работать, как мне нужно, уже дело техники. Спасибо тебе огромное. 

Неудобно тебя эксплуатировать по мелочам, но, может, напишешь с ходу, по какому принципу WMP выбирает папку для файла плейлист. Я ведь составлял этот плейлист из медиафайлов, кот. лежат в одной папке, а плейлист по умолчанию сохраняется совсем в другой. По какой-то иронии он сохраняется в папке, кот. у меня имеет имя MYCOP и служит для соответствующих целей.

С искренним признанием за помощь, 
alexlutz


PM MAIL   Вверх
diadiavova
Дата 1.10.2009, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Цитата(alexlutz @  1.10.2009,  12:04 Найти цитируемый пост)
Как же ты догадался, что я сохранил плейлист не в папке по умолчанию, а в другой, удобной для себя? 
Первое, что пришло в голову, когда у меня всё заработало smile 

Что до остального, плейлисты устроены довольно просто, сохрани какой-нибудь в разных форматах и просмотри в любом текстовом редакторе. В частности wpl - формат, основанный на xml а с m3u всё ещё проще. В принципе, разобравшись как они устроены сможешь сам их сформировать. Если мне не изменяет память, то m3u будет работать, даже если это будет просто список адресов, каждый на отдельной строке.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
alexlutz
Дата 1.10.2009, 18:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 29.9.2009

Репутация: нет
Всего: нет



diadiavova

Спасибо ещу раз. Теперь есть с чем разбираться. Когда справлюсь с меню, сообщу на форум. Может, кому-то пригодится.

alexlutz
PM MAIL   Вверх
alexlutz
Дата 2.10.2009, 11:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 29.9.2009

Репутация: нет
Всего: нет



diadiavova

Приходится снова просить о помощи.
С wpl-файлами я разобрался. 
И проигрываются они кодом Player.URL= "абсолютный адрес wpl-файла", один за другим, как и надо.
Но есть одно препятствие, которое не позволяет использовать список. Нет окончания проигрывания списка. Когда проигрывается единственный файл, я использую событие PlayStateChange, чтобы закрыть окно плеера и тем самым открыть окно меню. Написал код типа

Код

Private Sub Player_PlayStateChange(ByVal sender As Object, _
                                           ByVal e As  _
                                           AxWMPLib._WMPOCXEvents_PlayStateChangeEvent) _
                                           Handles Player.PlayStateChange
        Select Case e.newState
             Case WMPLib.WMPPlayState.wmppsPlaying     'Воспроизводится файл.
                               ...
             Case WMPLib.WMPPlayState.wmppsMediaEnded   'Конец файла
                   Me.Close()      'Закрывает окно с плеером, тем самым открывает окно меню.
        End Select
End Sub


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

Я понимаю, что действую по принципу "дайте попить, а-то так есть хочется, аж переночевать негде". Но все же надеюсь на помощь.

alexlutz

Это сообщение отредактировал(а) diadiavova - 2.10.2009, 12:43
PM MAIL   Вверх
diadiavova
Дата 2.10.2009, 12:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



alexlutz, я не спец по плееру, но немного покопавшись обнаружил там свойство settings, у которого в свою очередь есть свойство playCount. Я бы копнул в этом направлении smile 


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
alexlutz
Дата 2.10.2009, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 29.9.2009

Репутация: нет
Всего: нет



diadiavova
Спасибо, буду копать.
alexutz
PM MAIL   Вверх
alexlutz
Дата 3.10.2009, 06:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 29.9.2009

Репутация: нет
Всего: нет



diadiavova

Нашел простое решение. В Sub Player_PlayStateChange, в случае списка, по окончании его проигрывания, WMPLib.WMPPlayState.wmppsReady = true (в случае 1 файла всегда false). Поэтому для случаев списка надо в операторе Case заменить параметр wmppsMediaEnded на wmppsReady.

У меня есть еще вопрос общего плана. Моя программа построена так, что каждая кнопка меню при кликанье вызывает код типа 
Код

Dim frmShowI As New fclsShowI()
frmShowI.Show()

Реально вместо I стоят цифры 1, 2..., для каждой кнопки своя. Формы fclsShowI, содержащие Player, я клонирую в редакторе VB .NET, причем тупо для каждой кнопки меню свою. Единственное их отличие между собой состоит в том, что в Sub Player_Enter, в коде Player.URL = "адрес I-го медиа", эти адреса разные. 
Как можно сделать вместо этих клонов одну форму?

alexlutz

Это сообщение отредактировал(а) alexlutz - 3.10.2009, 06:39
PM MAIL   Вверх
diadiavova
Дата 3.10.2009, 10:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



На форме, содержащей плеер создай свойство, в котором будет находиться адрес текущего медиафайла. Саму форму создай один раз но не внутри метода, а на уровне класса. В обработчике кликов присваивай новому свойству формы адрес файла и запускай форму.
Для того, чтобы форма не уничтожалась при закрытии в неё надо добавить обработчик события Closing с таким кодом
Код

Sub Form_Closing(ByVal sender As Object, ByVal e As CancelEventArgs) Handles Me.Closing
    e.Cancel = True
    Me.Hide()
End Sub




--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
alexlutz
Дата 3.10.2009, 11:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 29.9.2009

Репутация: нет
Всего: нет



diadiavova

Да... Для новичка сложновато.
Но попробую разобраться. Спасибо.

alexlutz
PM MAIL   Вверх
diadiavova
Дата 3.10.2009, 11:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Да сопсно...

Присоединённый файл ( Кол-во скачиваний: 7 )
Присоединённый файл  ShowForm.rar 64,87 Kb


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
OhMyGod
  Дата 21.6.2010, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 24.11.2009
Где: Харьков

Репутация: нет
Всего: нет



А что означает ошибка InvalidActiveXStateException  в строке, где я путь прописываю?

PM MAIL   Вверх
sergovano
Дата 27.8.2014, 22:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 27.8.2014
Где: Россия, Вологда

Репутация: нет
Всего: нет



Цитата(diadiavova @ 3.10.2009,  11:55)
Да сопсно...

Здравствуйте. Похоже эта проблема с плеером идёт из года в год ) Изучаю самостоятельно VB.Net по книге Лукина и есть затруднение. Не могу разобраться как прописать свойство кнопке. Пробую как в учебнике, в принципе всё понятно и всё получалось пока не дошел до Windows Плеера. Кнопки Воспроизведение Файла и Остановка Файла  работают, опять же не с тем кодом (AxWindowsMediaPlayer1.URL = "D:\VB\Player\....mp3") вместо объекта Плеер., который в книге. Код высмотрел на одном ресурсе, попробовал этим кодом прописать другое свойство, другой кнопке - быстрого воспроизведения, VS-2012 пишет ошибку. Подскажите как исправить, желательно с комментариями, почему так. Скрины и проект прикрепляю. But1 - воспроизведение файла, But2 - остановка файла, But3 - ускоренное воспроизведение. Файлы почему то не прикрепляются...

Это сообщение отредактировал(а) sergovano - 27.8.2014, 22:37
PM MAIL   Вверх
diadiavova
Дата 27.8.2014, 23:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Цитата(sergovano @  27.8.2014,  23:34 Найти цитируемый пост)
Изучаю самостоятельно VB.Net по книге Лукина

Это она?
http://www.ozon.ru/context/detail/id/2293518/
2005 год? Плохая идея.
Цитата(sergovano @  27.8.2014,  23:34 Найти цитируемый пост)
(AxWindowsMediaPlayer1.URL = "D:\VB\Player\....mp3") вместо объекта Плеер., который в книге.

К объекту плеера надо обращаться по тому имени, которое сам ему назначишь (свойство Name), если этого не делаешь, то имя назначается автоматически, по всей видимости автор переименовал плеер, а ты этого не сделал.
Цитата(sergovano @  27.8.2014,  23:34 Найти цитируемый пост)
 Код высмотрел на одном ресурсе, попробовал этим кодом прописать другое свойство, другой кнопке - быстрого воспроизведения

Смысл этой фразы мне непонятен. Напиши конкретнее, что именно ты сделал и чего хотел добиться.
Цитата(sergovano @  27.8.2014,  23:34 Найти цитируемый пост)
 Файлы почему то не прикрепляются...

Точно не скажу, но возможно есть ограничения для новичков и надо какое-то количество постов на форуме оставить, прежде чем функция будет доступна.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
sergovano
Дата 28.8.2014, 06:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 27.8.2014
Где: Россия, Вологда

Репутация: нет
Всего: нет



Цитата(diadiavova @ 27.8.2014,  23:13)
Цитата(sergovano @  27.8.2014,  23:34 Найти цитируемый пост)
Изучаю самостоятельно VB.Net по книге Лукина

Цитата(sergovano @  27.8.2014,  23:34 Найти цитируемый пост)
 Код высмотрел на одном ресурсе, попробовал этим кодом прописать другое свойство, другой кнопке - быстрого воспроизведения

Смысл этой фразы мне непонятен. Напиши конкретнее, что именно ты сделал и чего хотел добиться.

Ссылка
PM MAIL   Вверх
sergovano
Дата 28.8.2014, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 27.8.2014
Где: Россия, Вологда

Репутация: нет
Всего: нет



Цитата(diadiavova @ 27.8.2014,  23:13)
Это она? 2005 год? Плохая идея.

А я наоборот начал втягиваться. До этого пробовал другие учебники, дальше 20-ти страниц материала не получалось изучить. ) А по этой книге, построил простенький калькулятор и появилось желание идти дальше. Еще бы наставники были, чтоб не на голой так скать теории из книжки обучаться....
Цитата(sergovano @  27.8.2014,  23:34 Найти цитируемый пост)
 Код высмотрел на одном ресурсе, попробовал этим кодом прописать другое свойство, другой кнопке - быстрого воспроизведения

Цитата(diadiavova @ 27.8.2014,  23:13)
Смысл этой фразы мне непонятен. Напиши конкретнее, что именно ты сделал и чего хотел добиться.

Вместо:

Код

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _Handles Button1.Click
     Плеер.FileName = "D:\ ..."
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
     Плеер.Stop()
End Sub


Прописал:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _Handles Button1.Click
Код


     AxWindowsMediaPlayer1.URL = "D:\ ..."
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
     AxWindowsMediaPlayer1.Ctlcontrols.Stop()
End Sub


Button1 и Button2 работают.

Попробовал задать свойство Button3 - ускоренное воспроизведение файла:

Код

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
     AxWindowsMediaPlayer1.Ctlcontrols.Rate = 2
End Sub


Студия показала ошибку.


Модератор: не забываем пользоваться тегом code
PM MAIL   Вверх
diadiavova
Дата 28.8.2014, 14:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Цитата(sergovano @  28.8.2014,  11:47 Найти цитируемый пост)
Попробовал задать свойство Button3 - ускоренное воспроизведение файла:

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
     AxWindowsMediaPlayer1.Ctlcontrols.Rate = 2
End Sub

Студия показала ошибку.

А с чего ты взял, что Рэйт - это ускоренное воспроизведение? Это скорее рейтинг трека, не? Да и доступ к свойству осуществляется так
Код

AxWindowsMediaPlayer1.settings.rate
 Быстрое воспроизведение это скорее вот
http://msdn.microsoft.com/en-us/library/wi...v=vs.85%29.aspx


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
sergovano
Дата 28.8.2014, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 27.8.2014
Где: Россия, Вологда

Репутация: нет
Всего: нет



Цитата(diadiavova @ 28.8.2014,  14:00)
Цитата(sergovano @  28.8.2014,  11:47 Найти цитируемый пост)
Попробовал задать свойство Button3 - ускоренное воспроизведение файла:

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
     AxWindowsMediaPlayer1.Ctlcontrols.Rate = 2
End Sub

Студия показала ошибку.

А с чего ты взял, что Рэйт - это ускоренное воспроизведение? Это скорее рейтинг трека, не? Да и доступ к свойству осуществляется так
Код

AxWindowsMediaPlayer1.settings.rate

Спасибо!
Прописал:
Код

AxWindowsMediaPlayer1.settings.rate = 2

Файл воспроизводится в два раза быстрее, как и написано в учебнике.
ЗаписАл в шпаргалки )

Это сообщение отредактировал(а) sergovano - 29.8.2014, 09:42
PM MAIL   Вверх
sergovano
Дата 1.9.2014, 23:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 27.8.2014
Где: Россия, Вологда

Репутация: нет
Всего: нет



Цитата(diadiavova @ 27.8.2014,  23:13)
Это она? 2005 год? ...

Выполнил таки задание с плеером по книжке Лукина, спасибо за помощь. 
PM MAIL   Вверх
sergovano
Дата 6.9.2014, 13:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 27.8.2014
Где: Россия, Вологда

Репутация: нет
Всего: нет



Цитата(diadiavova @ 27.8.2014,  23:13)
 ...

Подскажите как вставить таблицу из файла Excel в TextBox формы?
Пытаюсь вставить следующим образом:
Код

Private Sub TextBox1_TextChanged(ByVal sender As Object, e As EventArgs) Handles TextBox1.TextChanged
        Dim Exc As Object = CreateObject("Excel.Application")
        Exc.Workbooks.open("D\...\Tab.xls")
        Exc.Visible = True
        Exc.Sheets(1).Activate()
        TextBox1.Text = Exc.Sheets(1).Range("A3").Value
    End Sub

Текстовое поле пустое.
PM MAIL   Вверх
diadiavova
Дата 8.9.2014, 11:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



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

Добавлено через 2 минуты и 16 секунд
И кстати этот вопрос к теме топика отношения не имеет, так что в следующий раз создавай свою тему для таких вопросов.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
sergovano
Дата 9.9.2014, 21:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 27.8.2014
Где: Россия, Вологда

Репутация: нет
Всего: нет



Цитата(diadiavova @ 8.9.2014,  11:45)
sergovano, Я здесь вижу только одну проблему: ты выполняешь все это дело в обработчике события TextChanged. Если содержимое поля не изменить, то этот код выполняться не будет, что по всей видимости и происходит. Если же это сделать, то код зациклится, в силу того, что в самом коде ты снова меняешь текст этого поля, что в свою очередь снова приведет к возникновению этого же события и вызову этого  же метода и так потенциально до бесконечности.

Добавлено @ 11:47
И кстати этот вопрос к теме топика отношения не имеет, так что в следующий раз создавай свою тему для таких вопросов.

Ага разобрался. Спасибо. Таблицу правда не скопировал, но данные из файла Excel вытащил, появляются правда в текстовом поле по очереди ))) а не в ряд. Рановато конечно, в эти дебри лезть, но безделушка с импортом Excel-я нужна, да и практические заморочки на пользу. 
Высмотрел код как импортировать из файла Excel форму и обратно, проблема теперь с ISAM. Думаю, что не конектится Excel по причине каких то, не хватающих драйверов или некорректных расширений самого Офиса 2003.  Выложу в схожей с проблемой теме. Глянете?

Замечание по вопросу к теме топика услышал.

PM MAIL   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума VB .NET
diadiavova
  • Прежде чем задать вопрос, воспользуйтесь поиском: возможно Ваш вопрос уже обсуждался и на него был получен ответ.
  • Если такой же вопрос не найден, не стоит задавать свой вопрос в любую тему, создайте новую.
  • Заголовок темы должен отображать ее суть.
  • Содержание поста должно описывать проблему понятно, но в то же время, по возможности, лаконично. Сначала следует описать суть вопроса, потом можно привести пример кода, не вынуждайте других участников угадывать в чем Ваша проблема - телепатов здесь нет.
  • Будьте взаимно вежливы и дружелюбны.
  • При оформлении сообщений используйте форматирование, примеры кода заключайте в теги [CODE=vbnet][/CODE].
  • Также ознакомьтесь с общими правилами, действующими на всем форуме.
  • Если вопрос решен, не забывайте помечать тему решенной(вверху темы есть ссылка). Кроме того, если Вы хотите отблагодарить участников, оказавших помощь в решении, можно повысить им репутацию, в случае, если у Вас менее 100 сообщений в форуме и функция изменения репутации Вам недоступна, можете написать сюда.
  • Общие вопросы по программированию на платформе .NET обсуждаются здесь.
  • Литература по VB .NET обсуждается здесь.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, diadiavova.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB .NET | Следующая тема »


 




[ Время генерации скрипта: 0.1432 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.