Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Как создать свой сайт и заработать?" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Программирование с нуля - это совсем просто! N 6. Завершаем музыкальный плеер в Visual Studio
Информационный Канал Subscribe.Ru |
Программирование с нуля - это совсем просто!6) Завершаем музыкальный плеер в Visual Studio.
Вводная. Читать желательно. Там где написано "Читать обязательно!", имеется в виду конечно "ДЕЛАТЬ обязательно!". Все эти выпуски можно найти здесь: http://russianenterprisesolutions.com/sbo/base.htm Спрашивают вот, совершенно справедливо:
Я подписался на ваш курс программирования, мне первое занятие
пришло такое: 5) Делаем первую программу - музыкальный
проигрыватель. И еще: Сколько пустой болтовни... где же учёба?
Прошу прощения.
Также немного подкорректирован способ правильного выполнения заданий:
1) Задания выполняются последовательно, начиная с первого, без пропусков. Обмен дружественными рассылками. Неисследованные уголки Интернета http://subscribe.ru/catalog/inet.review.ugolkiineta Обзоры интересных, но малоизвестных ресурсов Сети. Каждая ссылка уникальна своей тематикой. За меньшее время вы получите больше информации. Теперь от программирования в Delphi (тут был язык программирования - Паскаль, вы разве не заметили? :) переходим к другим - Бейсику и Си/Си++. Для этого нам понадобится Visual Studio .NET 2003, о которой я уже говорил. Она по идеологии напоминает Delphi, поэтому сложностей с ее освоением не возникнет. Не знаю точно, насколько будет совместимость со старыми версиями Visual Studio (Си++ точно не будет к сожалению, с Visual Basic сами проверяйте). Если считаете, что вам пока достаточно Delphi, то это занятие можете пропустить, или выполнить, не напрягаясь. Выйдет с ходу - хорошо, нет - тоже неплохо. С оболочкой познакомитесь :) В начальном окне Visual Studio обычно проект по умолчанию, как в Delphi, не открывается. Это надо своими руками делать. Ну давайте начнем с разработки на Си++, самый популярный в мире язык среди профессиональных программистов, как любят модные аналитические фирмы говорить. При устройстве на работу спрашивают прежде всего знание Си++, а потом уже все остальное. Так что через полчаса вы сможете всем совершенно искренне рассказывать: "а я на си плюс плюс музыкальный редактор намедни делал". Некоторые еще любят говорить на английский манер "си плас плас". Это совсем круто прозвучит :) Итак, запускаете Visual Studio .NET, даете команду главного меню File > New > Project (создать новый проект то бишь), и возникает вот такое хитроумное окно: http://russianenterprisesolutions.com/sbo/im/17.gif С его помощью можно открывать проекты на самых разных языках и для самых разных нужд. Ну мы еще до этого всего доберемся. Нам нужен раздел Visual C++ Projects, а в нем подраздел .NET. В правой части покажутся все доступные варианты такого раздела, выберите значок Windows Forms Application .NET (Приложение для платформы .NET - это такое усовершенствование Windows). В поле Name (название вашего проекта) укажите желаемое название (лучше английскими буквами), в поле Location - локацию :) , местонахождение проекта со всеми его файлами. http://russianenterprisesolutions.com/sbo/im/18.gif Теперь нажимаете ОК, и проект создан. Вот как теперь окно Visual Studio может выглядеть: http://russianenterprisesolutions.com/sbo/im/19.gif Оно на самом деле похоже на окно Delphi, только разные локальные окошки тут по разному размещены. В центре - знакомый вам дизайнер форм. Палитра компонентов (тут она называется панель инструментов, Toolbox) расположена слева. Видите там знакомую строчку Label? Вот-вот, это именно то, что вы подумали. В правой части вверху - инспектор объектов. Здесь он называется окно свойств (Properties). Под ним - проводник решения (Solution Explorer), или, попроще - менеджер проекта, показывающий входящие в проект файлы и взаимосвязи между ними. На самом деле и в Delphi такой есть, только я вам пока не говорил :) Вот и в Visual Studio закройте его пока, если хотите. Начнем создание плеера с конца. Сначала на форме разместим картинку. Для этого предназначен компонент PictureBox, в Delphi он назывался Image. Установите его на форму, а файл с рисунком задается через его свойство Image. В окне свойств в этом свойстве Image тоже есть кнопочка с тремя точками, вот с ее помощью нужный файл с фоновым рисунком и надо указать. Только явного свойства авторазмера в Visual Studio нету, а есть более общее SizeMode (режим задания размера объекта). В выпадающем списочке его значений есть такое значение AutoSize, вот его и надо взять. А после этого размер формы подгоните под размер картинки. http://russianenterprisesolutions.com/sbo/im/31.jpg Теперь очередь за компонентом наподобие медиаплеера - в Delphi был такой MediaPlayer, помните? Увы, в Visual Studio такого компонента нету. По крайней мере, нету явно доступного на панели инструментов. Но если у вас в Windows установлен стандартный проигрыватель Microsoft Windows Media (по умолчанию он всегда ставится), то мы можем тайком воспользоваться его функциями. Для этого в Windows уже встроены соответствующие возможности на системном уровне, только до них добраться надо. Собственно, MediaPlayer из Delphi представляет собой такую системную функцию (системный компонент) Windows, "обернутый" особым кодом специально для Delphi. То есть создатели Delphi о нас позаботились. А вот создатели Visual Studio - нет :) Но мы и без них справимся, правда? Наведите мышку на любую область панели инструментов (слева которая) и нажмите правую клавишу. В локальном меню выберите пункт Add/Remove Items (Добавить/удалить элементы). Там будет закладочка COM Components (это список системных компонентов Windows, которые на вашем компьютере доступны). Прокрутите его и найдите строчку Windows Media Player. Поставьте в ее начале галочку. http://russianenterprisesolutions.com/sbo/im/30.gif Теперь нажмите ОК и посмотрите панель инструментов. Она разбита на разделы (как в Delphi), только они не закладками сделаны, а раскрывающимися списками. Нам нужен раздел Windows Forms (раздел стандартных элементов Windows .NET). В нем окажется новая строчка Windows Media Player (раньше ее у вас здесь не было, уверяю!). Если ее в видимой части не видно, то нужно стрелочку вниз пощелкать. http://russianenterprisesolutions.com/sbo/im/32.gif Щелкните на этой строчке, а затем на форме в дизайнере. Только сразу этот компонент на форме не появится. В нижней части окна Visual Studio предварительно замелькают строчки типа таких:
------ Build started: Project: MojProekt, Configuration: Debug Win32 ------ Creating AxImp wrapper file... Generated Assembly: C:\tmp\MojProekt\Debug\AxInterop.MediaPlayer.dll Build log was saved at "file://c:\tmp\MojProekt\Debug\BuildLog.htm" MojProekt - 0 error(s), 0 warning(s) ---------------------- Done ---------------------- Build: 1 succeeded, 0 failed, 0 skippedПомните, когда в Delphi мы нажимали кнопку Run, и проект преобразовывался в готовую программу, показывалось окошечко с ходом этого процесса? А вот в Visual Studio такое преобразование в нижнем окне отображается. Сейчас автоматически выполнилось преобразование системного объекта Windows Media Player в компонент Visual Studio, доступный в дизайнере. Такая своеобразная "обертка" системной функции - в Delphi она заранее сделана разработчиками, ну а тут достаточно быстро на лету сформировалась. А когда процесс преобразования завершится, на форме возникнет что-то примерно такое: http://russianenterprisesolutions.com/sbo/im/33.jpg Это так Windows Media Player выглядит, целиком :) Его можно сжать до одной строчки с кнопками: http://russianenterprisesolutions.com/sbo/im/34.jpg Теперь надо название файла указать, который будет воспроизводиться. Для этого воспользуемся свойством FileName компонента Media Player, оно совпадает по названию со схожим свойством MediaPlayer из Delphi. Правда, в нем нет удобной кнопочки для выбора файла, придется его местоположение вручную записывать: http://russianenterprisesolutions.com/sbo/im/35.gif Теперь можно наш проект собрать в готовую программу. В Visual Studio для этого предназначена кнопка Start (с синеньким треугольничком, она в самом центре вверху, справа от нее выпадающий список "Debug..."). Или можно F5 нажать. Начнется процесс создания приложения. В нижней части много разного текста будет выводиться. А потом ваша программа сама запустится и вы услышите любимую мелодию. Вот таким нехитрым способом мы изучили возможности программирования Visual C++ :) Теперь самостоятельно изучите Visual Basic :) Делается это примерно так. Повторите данный проект, - создайте заново (File > New > Project), только теперь не Visual C++ Projects указываете, а раздел Visual Basic Projects. Там будет значок Windows Application. Вот его и выбираете. Так же картиночку в дизайнере добавляете, проигрыватель, все настраиваете и жмете F5. И слушаете :) Заметили разницу между C++ и Basic-ом? Это хорошо :) Ну а в следующий раз наконец к программированию приступим. С оболочками вы познакомились, убедились, что никаких проблем с созданием своих программ нету, правда? Теперь языки программирования изучим, с помощью которых более сложное поведение форм и задается.
Решения на логическое упражнение из четвертого выпуска. Вот несколько типичных ответов.
1) В каком случае шансы на выигрыш больше - 5 из 90 или 85 из 90? Еще. 1.Шансов на выигрыш больше в варианте Б, так как предпологается,что в этом случае только 5 шаров невыиграшные,в противном случае задача сама по себе просто бессмыслена.Если же нам надо найти именно эти шары,то она превращается в вариант А.
2.Соответственно,вообщем случае и в том,и
в другом случае задача упрощается,так как надо
найти меньшее количество нужных нам шаров.Но,
во всех случаях,шансов больше в варианте Б.
Ответы же такие. 85 из 90 или 5 из 90, разницы нету. Угадать 85 выпавших - ведь то же самое, что угадать 5 невыпавших! 83 из 85 из 90 или 3 из 5 из 90 (как и все другие - 82/85 2/5; 84/85 4/5 итд) также равновероятны, как ни удивительно на первый взгляд. Попробую объяснить. Тоже от инверсии пойдем. Сам долго думал над объяснением :)
Угадать 3 из 5 выпавших. В чем недостаток наших решений? В усложнении! А на самом деле все просто. Что в программировании, что в жизни :) Подумайте над этим решением еще, может, какое другое очевидное объяснение найдете. Новые задания в следующем выпуске. (c) Сергей Бобровский bobrovsky@russianenterprisesolutions.com Школа программирования с нуля http://russianenterprisesolutions.com/sbo/ Первые выпуски http://russianenterprisesolutions.com/sbo/base.htm
|
http://subscribe.ru/
http://subscribe.ru/feedback/ |
Подписан адрес: Код этой рассылки: comp.soft.prog.prognull |
Отписаться |
В избранное | ||